Блоки инициализации. Порядок выполнения в классе

Блоки инициализации. Порядок выполнения в классе

Блок инициализации всегда выполняется перед конструктором.
Если блоков инициализации несколько, они выполняются в порядке их появления в коде, но всегда перед конструктором.


public class MyClass {
    { System.out.println("First inicializer block");  }
    
    MyClass () {
        System.out.println("Constructor is called");
    }
    
    { System.out.println("Second inicializer block");  }
    
    public static void main(String[] args) {
        new MyClass ();
    }
}
    /*
    First inicializer block
    Second inicializer block
    Constructor is called
    */
Методы и Инкапсуляция