Зачем нужны и какие бывают блоки инициализации?



Блоки инициализации представляют собой код, заключенный в фигурные скобки и размещаемый внутри класса вне объявления методов или конструкторов.



• Существуют статические и нестатические блоки инициализации.

• Блок инициализации выполняется перед инициализацией класса загрузчиком классов или созданием объекта класса с помощью конструктора.

• Несколько блоков инициализации выполняются в порядке следования в коде класса.

• Блок инициализации способен генерировать исключения, если их объявления перечислены в throws всех конструкторов класса.

• Блок инициализации возможно создать и в анонимном классе.