제네릭은 처리해야 할 대상의 자료형에 의존하지 않는 클래스(인터페이스) 구현 방식이다.
<Type>
같은 형식의 파라미터를 붙여 선언한다.class 클래스 이름 <파라미터1, 파라미터2, ...> { ... }
interface 인터페이스 이름 <파라미터1, 파라미터2, ...> { ... }
class GenericClassTester {
private T xyz;
GenericClass(T t) { // 생성자
this.xyz = t;
}
T getXyz() { // xyz를 반환
return xyz;
}
public static void main(String[] args) {
// 다음과 같이 파라미터에 String을 넘길 수도 있고 Integer를 넘길 수도 있다.
GenericClass<String> s = new GenericClass<String>("ABC");
GenericClass<Integer> n = new GenericClass<Integer>(15);
System.out.println(s.getXyz());
System.out.println(n.getXyz());
}
}