<aside>
이하의 문서는 Effective JAVA 3E에서 제네릭과 관련된 문서를 정리한 내용입니다.
</aside>
<aside> 💡
이하는 dev.java의 제네릭스 문서를 선택적으로 정리한 내용입니다.
</aside>
https://dev.java/learn/generics/intro/
제네릭은 클래스, 인터페이스, 메서드를 정의할 때(이 세가지에 쓰인다!) 타입(클래스, 인터페이스)를 파라미터로 사용할 수 있도록 한다.
💡 제네릭도 어딘가에 선언되어야 하는데, 그 선언되는 위치를 기준으로 클래스, 인터페이스, 메서드에 쓰인 제네릭으로 구별한다.
즉 타입을 변수화해, 동적으로 지정할 수 있도록 한다.
이렇게 변수화된 타입을 타입 매개변수, 형식 매개변수, 타입 파라미터… 등등 라고 한다.
제네릭을 사용하는 것에 관한 이점을 간단하게 말하면 다음과 같다.
E: Element