2022/04

    [Kotlin] 제네릭 타입과 variance 한정자를 활용하라

    재사용을 위한 과도한 유연성 다양한 타입에 동일한 로직을 적용하기 위해 코드 재사용을 과도하게 하려는 경우가 있습니다. 파라미터를 전부 Any로 받는 것이 대표적인 예시입니다. open class Car class K3 : Car() class Avante : Car() //“차에 대한 설명서” 함수 fun getInstruction(car: Array) { println("car = ${car.size}") } 많이 극단적인 예제이기는 합니다.. open class Fruit class Apple : Fruit() fun main() { val k3 = K3("k3", "기아") val avante = Avante("아반떼", "현대") val fruits: Array = arrayOf(Apple())..