2024/11 26

[JAVA] 제네릭 (Generic) 2

타입 매개변수 제한 1 - 시작요구사항 : 개 병원은 개만 받을 수 있고, 고양이 병원은 고양이만 받을 수 있다. public class DogHospital { private Dog animal; public void set(Dog animal) { this.animal = animal; } public void checkup() { System.out.println("동물 이름 " + animal.getName()); System.out.println("동물 크기 " + animal.getSize()); animal.sound(); } public Dog bigger(Dog target) { return ..

카테고리 없음 2024.11.09

[JAVA] 제네릭 (Generic)

처음 제네릭에 관해 책을 읽었을 때 잘 이해가 가지 않아 해당 내용을 정리하게 되었다.단계별로 천천히 알아보자  제네릭이란?제레릭은 다양한 타입의 객체들을 다루는 메서드나 컬렉션 클래스에 컴파일 시 타입 체크(compile - type check)를 해주는 기능이다. 객체의 타입을 컴파일 시 체크하기 때문에 객체의 타입 안정성을 높이고 형변환의 번거로움이 줄어든다. 타입 안정성을 높힌다? 무슨 의미일까?package generic.ex1;public class IntegerBox { private Integer value; public void setValue(Integer value) { this.value = value; } public Integer getValue..

JAVA 2024.11.08

[자바의 신2] 정리해봅시다 [2장~ 11장]

2장. 가장 많이 쓰는 패키지는 자바랭같은 패키지에 있는 클래스를 제외하고, 별도로 import 하지 않아도 되는 패키지는 무엇인가요?java.lang 패키지는 별도로 import 하지 않아도 됩니다.자바의 메모리가 부족해서 발생하는 에러는 무엇인가요?자바의 메모리가 부족하여 발생하는 에러는 OutOfMemoryError입니다.메서드 호출관계가 너무 많아서 발생하는 에러는 무엇인가요?StackOverflowError자기 자신의 메서드를 다시 부르는 재귀호출 메서드와 같은 것을 잘못 구현했을 때 발생합니다.java.lang 패키지에 선언되어 있는 3개의 어노테이션에는 어떤 것들이 있고, 각각의 역할은?Deprecated : 컴파일러에게 더 이상 사용하지 않는 메서드임을 알립니다.Override : 해당 메..

JAVA 2024.11.07

[스프링 핵심 원리 - 기본편] 의존관계 자동 주입 1

다양한 의존 관계 주입 방법 의존 관계 주입 4가지생성자 주입수정자 주입(setter 주입)필드 주입일반 메서드 주입 1. 생성자 주입 이름 그대로 생성자를 통해서 의존 관계를 주입받는 방법이다.생성자 호출 시점에 딱 한번만 호출되는 것을 보장한다.불변, 필수 의존 관계에 사용한다.@Componentpublic class OrderServiceImpl implements OrderService { private final MemberRepository memberRepository; private final DiscountPolicy discountPolicy; @Autowired public OrderServiceImpl(MemberRepository memberRe..

Spring 2024.11.05

[JAVA] Grabage Collection Basics

가비지 컬렉터의 수거 대상은 무슨 근거로 판단할까?왜  heap 은 여러 영역으로 나눠져 있을까? 다음과 같은 궁금증이 생겨 해당 내용을 포스팅하게 되었습니다.  가비지 컬렉션이란?힙영역에서 사용 중인 객체와 사용 중이지 않는 객체를  식별하고 사용하지 않는  객체를 수거하여 메모리를  관리하는 기법입니다. 가비지 컬렉션의 루트 - 모든 객체 트리에 근원  가비지란 사용하지않는 객체를 말한다. 사용하지 않는 객체란 무엇일까?  사용하지 않는 객체란 GC Root와 관계가 있다. 어떤 객체가 유효한 참조가 존재한다면 'Reachable'그렇지 않으면 'Unreachable'이라 하며 'Unreachable'  한 객체는 GC의 대상이 된다.객체는 다른 여러 객체를 참조하고 그 객체들도 다른 객체들을 참조하..

JAVA 2024.11.05

[JAVA] Error 와 Exception

예외 클래스의 계층 구조자바에서는 실행 시 발생할 수 있는 오류 (Excepton과 Error)를 클래스로 정의하였다.모든 클래스의 조상인 Object  클래스가 최상단에 있고 Exception과 Error 클래스의 자손이 있다, 모든 예외의 최고 조상은 Exception 클래스이며 Exception 은 Checked Exception과 Uncheked Exception으로 나눌 수 있다.Error 대부분의 에러는 프로그램 밖에서 발생하고 메모리 부족과 같은 복구 불가능한 경우이다.Error는 프로세스에 영향을 주어 프로그램이 멈춰 버릴 수 있고 비정상적인 종료를 막을 수 없다. Excepton 대부분의 Exception 들은 프로그램 내에서 발생하고 복구 가능하다.예외가 발생하더라고 프로그래머가 적절한..

JAVA 2024.11.01