슈퍼 타입 토큰
자바 업계의 거장인 닐 개프터가 고안한 방식이다.
실체화 불가 타입은 런타임에 타입 정보가 사라지는 특징이 있어 class 리터럴을 이용해 타입 정보를 온전히 가져오지 못함
따라서 실체화 불가 타입 클래스를 정의하고, 해당 타입을 상속 받은 타입을 class 리터럴로 사용
상위 타입의 정확한 타입을 알 수 있음
스프링에서도 ParameterizedTypeReference 라는 클래스로 미리 구현하여 사용중임
단점
테스트하기 힘들다.
슈퍼 타입 토큰과 일반 타입 토큰을 혼용할 시, 일반 타입 토큰도 불필요하게 abstract super class 를 상속해야한다.