Safely accessing lateinit variables
Рецепт безопасного обращения к lateinit переменным в Kotlin, которое появилось в версии 1.2:
lateinit var fullName: Stringif (::fullName.isInitialized) { print("Hi, $fullName")}Только не проще ли бы использовать nullable property и использовать
null со старой доброй проверкой if (fullName != null). Моя рекомендация - не стоит убегать от nullable значений,
lateinit должно использовать только в случаях когда у вас инициализация происходит не в конструкторе, а в методе который вызывается сразу за ним, например Activity.onCreate(). Причем метод откуда приходит значения не должен быть асинхронным.Заменить
lateinit можно nullable property или делегатом lazy. А вообще используйте его только с Dagger в Android компонентах.