소거된 타입 파라미터1 코틀린(kotlin) - 실행 시 제네릭스의 동작 소거된 타입 파라미터와 실체화된 타입 파라미터 JVM의 제네릭스는 보통 타입 소거(type erasure)를 사용해 구현된다. 이는 실행 시점에 제네릭 클래스의 인스턴스에 타입 인자 정보가 들어있지 않다는 뜻이다. 함수를 inline으로 만들면 타입 인자가 지워지지 않게 할 수 있다. 이를 코틀린에선 "실체화"라고 한다. 실행 시점의 제네릭: 타입 검사와 캐스트 자바와 마찬가지로 코틀린 제네릭 타입 인자 정보는 런타임에 지워진다. -> 제네릭 클래스 인스턴스가 그 인스턴스를 생성할 때 쓰인 타입 인자에 대한 정보를 유지하지 않는다. 예를 들어 List 객체를 만들고 그 안에 문자열을 여럿 넣더라도 실행 시점에는 그 객체를 오직 List로만 볼 수 있고, 어떤 타입의 원소를 저장하는지 알 수 없다.' va.. Programming/Kotlin 2021. 11. 27. 이전 1 다음 728x90