IT/Kotlin

[Kotlin] 코틀린 lateinit property has not been initialized 에러

바다, 2023. 8. 31. 10:31
반응형

[Kotlin] 코틀린 lateinit property url has not been initialized 
 
[코틀린 lateinit, lazy 키워드 초기화 미루기]
- https://gxnzi.tistory.com/112
 
lateinit 키워드
선언 이후에 초기값을 할당할 것을
명시적으로 선언하는 것을 의미한다.
 
이는 변수가 사용되기 전에,
초기화 되는 것을 확신하는 상황
-> lateinit 변수를 초기화하지 않고 사용하거나
     lateinit 변수의 초기값이 할당되지 않은 상태에서 isNullOrEmpty() 함수를 사용하여 null 체크 한다면
lateinit property has not been initialized 에러가 발생하게 된다.
 
lateinit 변수의 초기화 체크는
isInitialzied() 함수를 사용하여,
변수의 초기화 여부를 체크하도록 한다.
 
사용법 예제
// lateinit 키워드를 사용한 변수 선언
private lateinit var date: String
 
// lateinit 변수 초기화 체크
if (!::data.isInitialzied) {
   // 초기화 되지 않은 경우 수행문
}

반응형