본문 바로가기
  • Sunnny-Dev
개발/안드로이드 스튜디오

[안드로이드 코틀린] 코틀린 문법-지연초기화

by sunny- 2021. 10. 11.

지연 초기화: nullable(?)이 남용되는 것을 방지해줌

lateinit

클래스 안에서 변수만 nullable로 미리 선언하고, 초기화를 나중에 해야하는 경우에 사용

- var 로 선언된 클래스의 프로퍼티에만 사용 가능

- null은 불허

- 기본 자료형을 사용 불가

 

lazy

읽기 전용 변수인 val을 사용하는 지연 초기화. 

val 로 변수 선언-> 코드 뒤쪽에  by lazy 작성-> by lazy 뒤의 중활호 안에 초기화값 작성

val person:Person by lazy{person()}

- 선언시에 초기화 코드를 함께 작성

- 변수가 최초로 호출되는 시점에 by lazy{}안의 값으로 초기화 됨.

댓글