Статический блок в Java
Сложную инициализацию статических полей иногда выносят
в статический блок - фигурные скобки с ключевым
словом static в теле класса. JVM выполняет такой
блок один раз, когда класс впервые загружается в память,
до создания любых объектов.
Зададим стартовое значение общего счётчика просмотров
для Post внутри статического блока:
class Post {
static int viewCount;
static {
viewCount = 100;
System.out.println("Post static init");
}
}
Обратимся к полю viewCount после статического блока и выведем
его:
System.out.println(Post.viewCount);
Сообщение из блока появится при первом обращении к
классу Post - например, при чтении
Post.viewCount в main. Повторный запуск
метода без перезагрузки класса блок снова не вызовет.
Сделайте класс Employee со статическим полем
defaultBonus. В статическом блоке присвойте
ему 500. Выведите Employee.defaultBonus.