проведения каких то сторонних действий при инициализации объекта?(а если быть точным, то до завершения его инициализации)
Если ты в Java что-то делал в конструкторе, помимо инициализации, то init как-раз подходит для этого.
Ну не "до завершения", инициализации полей и инит-блоки склеиваются последовательно в соответствии со своим положением в классе. К примеру, class A(val a: Int) { val b = a * 2 init { println("Hello world") } val c = a / 2f } превратится в A(int a) { this.a = a; this.b = a * 2; System.out.println("Hello world"); this.c = a / 2f; }
Обсуждают сегодня