Ответ
В Java нет точного аналога init-блока из Kotlin, но можно использовать:
- Инициализационные блоки (instance initializer) – выполняются при создании объекта до конструктора:
class Example {
{
// код инициализации
}
}
-
Конструкторы – основной способ инициализации в Java.
-
Статические блоки инициализации (аналог Kotlin
initдля статических полей):
static {
// статическая инициализация
}
Основное отличие: в Kotlin init выполняется после первичного конструктора, но до вторичных, а в Java инициализационные блоки выполняются в порядке их объявления перед конструктором.