В Kotlin автоматическая инициализация объекта происходит в нескольких случаях:
Когда происходит автоматическая инициализация объекта в Kotlin?
В Kotlin автоматическая инициализация объекта происходит в нескольких случаях:
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
В Kotlin автоматическая инициализация объекта происходит в нескольких случаях:
- При использовании ленивой инициализации с ключевым словом
lazy. Объект создаётся при первом обращении к нему. - При объявлении свойств с модификатором
lateinit— объект инициализируется позже, но до первого использования. - При создании объекта через конструктор класса — инициализация происходит сразу при вызове
newили при создании экземпляра.
Пример ленивой инициализации:
val myObject: MyClass by lazy {
println("Инициализация")
MyClass()
}
// "Инициализация" будет выведена только при первом обращении к myObject