제네릭 메소드는 타입 파라미터를 가지고 있는 메소드를 말한다.
제네릭 메소드는 리턴 타입 앞에 <> 기호를 추가하고 타입 파라미터를 정의한 뒤, 리턴 타입과 매개변수 타입에서 사용한다.
package ch13.sec03.ex01;
public class Box<T> {
private T t;
public T get() {
return t;
}
public void set(T t) {
this.t = t;
}
}
package ch13.sec03.ex01;
public class GenericEx {
public static <T> Box<T> boxing(T t) {
Box<T> box = new Box<T>();
box.set(t);
return box;
}
public static void main(String[] args) {
Box<Integer> box1 = boxing(100);
int value = box1.get();
System.out.println(value);
Box<String> box2 = boxing("바보");
String stringValue = box2.get();
System.out.println(stringValue);
}
}
여기서 T는 매개값이 어떤 타입이냐에 따라 컴파일 과정에서 구체적인 타입으로 대체된다.
box1은 boxing(100); 기본형이므로 Integer로 대체되어 Box<Integer>가 리턴된다.
box2는 boxing("바보"); 문자열이므로 String으로 대체되어 Box<String>으로 리턴된다.
'Java' 카테고리의 다른 글
Object (1) | 2024.10.09 |
---|---|
제네릭 - 제한된 타입 파라미터/ 와일드카드 (0) | 2024.07.11 |
제네릭 (Generic) (0) | 2024.07.10 |
어노테이션 (0) | 2024.07.10 |
정규표현식 (0) | 2024.07.10 |