[Kotlin] 제너릭(Generic)


[Kotlin] 제너릭(Generic)

제너릭(Generic) : 클래스나 함수에서 사용하는 자료형을 외부에서 지정할 수 있는 기능 수퍼 클래스 A와 A를 상속하는 서브 클래스 B가 있다고 해보자. 이 두 클래스의 인스턴스를 공용으로 사용하는 하나의 함수에 패러미터로 받으려면 어떻게 해야할까? 지난 포스트에서 확인한 것처럼 수퍼 클래스인 A의 자료형으로 받으면 B는 자동으로 A로 캐스팅된다. 또한 B의 자료형으로 받아도 A로 캐스팅된다. 따라서 두 클래스 모두 함수의 패러미터로 사용할 수 있다. 하지만 캐스팅은 프로그램의 속도를 저하시킬 수 있다는 단점이 있다. 그래서 제너릭(Generic)이라는 개념이 등장했다. 제너릭(Generic)은 함수나 클래스를 선언할 때 고정적인 자료형 대신 실제 자료형으로 대체되는 타입 패러미터를 받아 사용하는 방법이다. 이 타입 패러미터에 특정 자료형이 할당되면 제너릭을 사용하는 모든 코드는 할당된 특정 자료형으로 대체되어 컴파일된다. 따라서 캐스팅 연산 없이도 자료형을 그대로 사용할 수 ...


#안드로이드 #안드로이드앱 #앱 #코딩 #코틀린

원문링크 : [Kotlin] 제너릭(Generic)