2026-10-06

jun0·2일 전

강의 내용 정리
package genegic.ex1;

public class GenericBox {

private T value;

public void set(T value) {
    this.value = value;
}

public T get() {
    return value;
}

}

제네릭에 대하여 알아 보았다
제네릭은 실세 사용하는 생성 시점에 결정된다고 한다
제네릭은 위 처럼 <> 다이아몬드를 사용하고 안쪽의 단어는 아무거나 지정해도 된다.

package genegic.ex1;

public class Boxmain3 {

static void main(String[] args) {

    GenericBox<Integer> integerBox = new GenericBox<Integer>(); //생성 시점에 T의 타입이 결정
    integerBox.set(10);
    //integerBox.set("10"); // Integer 타입만 허용, 컴파일 오류
    Integer integer = integerBox.get(); // Integer 타입 반환(캐스팅 x)
    System.out.println("integer = " + integer);

    GenericBox<String> stringBox = new GenericBox<String>();
    stringBox.set("10");
    String str = stringBox.get();
    System.out.println("str = " + str);
}

}

메인 코드에 제네릭 객체를 생성해주면서 타입을 정해준다 Integer을 넣으면 제네릭박스 클래스의
T가 전부 Integer 타입으로 변환된다

유연성을 좋게 만들어 주는 것 같다

0개의 댓글