lateinit1 [코틀린] 지연 초기화 (lateinit, lazy) lateinit - 클래스 선언 시 컴파일러에서 프로퍼티의 선언을 null로 허용하지 않지만 lateinit을 사용하면 허용됨 - 즉 바로 초기화 안해도 된다. var로 선언된 프로퍼티만 가능 getter, setter 사용 불가능 기존 class Test{ //선언과 동시에 초기화 var age : Int = 5 var name : String //init 블록을 이용한 초기화 init { name = "test" } } lateinit 사용 class Test{ lateinit var name : String fun testMethod() { name = "지연초기화" } } lazy - val로 선언한 객체도 지연 초기화 가능 - 람다식으로 구성되어 lazy 인스턴스 반환값을 가지는 함수 호출 시점.. 2020. 9. 18. 이전 1 다음