[Java] 제네릭/와일드카드/타입 소거 정리
제네릭과 타입 파라미터제네릭은 클래스/인터페이스/메서드가 다룰 타입을 타입 파라미터로 받아, 컴파일 시점에 타입을 강하게 체크한다.타입 파라미터는 관례적으로 T, E, K, V 같은 단일 대문자를 많이 쓴다.T : TypeE : ElementK : KeyV : Value사용하는 이유컴파일 타임 타입 안정성: 잘못된 타입 사용을 컴파일 단계에서 막는다.캐스팅 제거: 컬렉션에서 꺼낼 때 불필요한 캐스팅과 런타임 예외 위험을 줄인다.raw type을 쓰면 컴파일러가 타입을 제대로 검사하지 못해, 나중에 꺼내 쓸 때 캐스팅이 필요하고 런타임 오류 가능성이 커진다.제네릭 클래스/인터페이스선언부에 하나 이상의 타입 파라미터를 두면 제네릭 클래스/인터페이스라 부른다. 타입 파라미터 도입으로 타입 변수(Type Var..