Урок по Java 25: Ключевое слово static и инициализация классов
Java. Зачем нужны и какие бывают блоки инициализации?
Блоки инициализации в Java-это блоки кода, которые могут использоваться для инициализации полей экземпляра или статических полей класса. Они выполняются при создании экземпляра или загрузке класса соответственно. Есть два вида блоков инициализации: блоки инициализации экземпляра и блоки инициализации статического блока. Блоки инициализации экземпляра используются для инициализации полей экземпляра в момент создания объекта. Они объявляются внутри класса, вне каких-либо методов и имеют такой же вид, как и обычный блок кода...
Java. Каков порядок вызова конструкторов и блоков инициализации с учётом иерархии классов?
В Java порядок вызова конструкторов и блоков инициализации в классе и его иерархии определяется следующим образом: Parent static block(s) → Child static block(s) → Grandchild static block(s) → Parent non-static block(s) → Parent constructor → → Child non-static block(s) → Child constructor → → Grandchild non-static block(s) → Grandchild constructor Например, рассмотрим следующий код: class Base {
static {
System.out.println("Статический блок инициализации базового класса");
}
Base() {
System...