중요 학습 내용 [JAVA]
Generics
-
사용 이유
- 클래스(타입)의 일반화(구현의 편의성)
- 자료형의 안정성(타입의 안정성)
- down-casting이 적용된 경우, compile 시점에서 error를 확인할 수 없다.(runtime error만 확인 가능)
-
기능
- 매개변수나 메서드 반환형도 제네릭 타입으로 지정되어 명확히 해당 타입에 대해 처리할 수 있다.
-
타입 제한 설정
- 제네릭 내부에서
extends로 타입 설정 제한 가능
wildcard를 통해 메서드의 매개변수 지정 시, 타입 변수 제한 가능
- \<?>: 제한 없음
- \<? extends Type>: Type과 Type의 자식 가능
- \<? super Type>: Type과 Type의 부모 가능
REMIND
놓쳤던 점