-
Kotlin) lateinit과 lazy 특징과 차이점Kotlin 2020. 12. 22. 13:56
코틀린에서 변수 선언을 먼저하고 초기화를 지연하는 기능들인 lateinit과 lazy가 있습니다.
초기화를 지연하면 사용할지 모르는 데이터를 미리 초기화할 필요가 없기 때문에 성능 향상에 도움 됩니다.
lateinit
- 변경 가능한 var에서만 사용할 수 있습니다.
- primitive type에 적용할 수 없습니다. (primitive type = In,t Boolean, Long, Double.. 코틀린에서 제공하는 기본적인 타입)
- nullable에서 사용할 수 없습니다.
- 필요할 때 지연했던 초기화를 초기화하고 사용 할 수 있습니다.
- 초기화 하지 않고 실행하게 되면 Exception이 발생합니다.
lazy
- 변경 불가한 val에서만 사용할 수 있습니다.
- primitive type에 적용가능합니다.
- nullable에서 사용 가능합니다.
반응형'Kotlin' 카테고리의 다른 글
Kotlin) Coroutine 공식 가이드 번역 02 - Cancellation and Timeouts (0) 2021.01.11 Kotlin) Coroutine 공식 가이드 번역 01 - Basics (0) 2021.01.08 Kotlin) 코틀린 inner 클래스 알아보기 (0) 2020.12.18 Kotlin) 코틀린 infix 키워드 알아보기 (0) 2020.12.15 Kotlin) 코틀린 Collection - List, Map, Set 사용법 (0) 2020.12.15