정의
- 다양한 타입의 객체를 다루는 메서드, 컬렉션 클래스에서 컴파일 시에 타입 체크
- 미리 사용할 타입을 명시해서 형변환을 하지 않아도 되게 함
- 객체의 타입에 대한 안정성 향상 및 형변환의 번거로움 감소
- 바구니에 라벨링한다는 개념(꺼낼 때 뭐가 들었는지 알 수 있도록)
표현
- 클래스 또는 인터페이스 선언 시 <>에 타입 파라미터 표시
public class Class_Name<T>{}
public interface Interface_Name<T>{}
Generic Type 객체를 할당 받을 때 와일드 카드(?) 이용
- generic type에서 구체적인 타입 대신 사용
-종류
- <?>
- <? extends T>
- <? super T>
Generic Method
- 파라미터와 리턴타이븡로 type parameter를 갖는 메서드
- 메서드 리턴 타입 앞에 타입 파라미터 변수 선언