2 года назад
Java 1187. Где разрешена инициализация статических/нестатических полей?
Инициализацию как статических, так и нестатических полей в Java можно выполнять внутри конструктора, блока инициализации и при объявлении переменной. Инициализация статических полей также может быть выполнена в блоке статической инициализации класса. Примеры: public class MyClass { private int myField; public MyClass(int myField) { this.myField = myField; } } public class MyClass { private static final String...
447 читали · 3 года назад
Java & Kotlin - Порядок инициализации полей, конструкторов и блоков
Рассмотрим самый сложный пример — представим, что у нас есть наследование, статика, конструкторы и поля (+ companion object, + init) Порядок инициализации в Java и Kotlin немного различны, хотя и схожи по общей идее Java: Статические и нестатические поля и блоки инициализируются в порядке объявления (чем выше строчка, тем первее она будет инициализирована) 1. Статические поля и блоки родителя 2. Статические поля и блоки ребенка 3. Нестатические поля и блоки родителя 4. Конструктор родителя 5...