[KOTLIN] 타입 파라미터의 섀도잉을 피하라 (이펙티브 코틀린)
·
KOTLIN
섀도잉 class User(val email: String) { fun isMatchingEmail(email: String): Boolean { ... } ... } 프로퍼티와 파라미터가 같은 이름을 가지게 되어, 지역 파라미터가 외부 스코프에 있는 프로퍼티를 가리게 되는 것을 섀도잉이라 함 그냥 프로퍼티와 파라미터가 같은 이름을 가질 수 있음으로 정의 interface Tree class Birch: Tree class Spruce: Tree class Forest { fun addTree(tree: T) { println("adding tree ...") } } fun main() { val forest = Forest() forest.addTree(Birch()) forest.addTree(Spr..