Спецификация Java 11: 12.4. Инициализация классов и интерфейсов

Инициализация класса состоит из выполнения его статических инициализаторов и инициализаторов для статических полей (переменных класса), объявленных в классе. Инициализация интерфейса заключается в выполнении инициализаторов для полей (констант), объявленных в интерфейсе. 12.4.1. Когда происходит инициализация Класс или тип интерфейса T будет инициализирован непосредственно перед первым появлением любого из следующих событий: T - это класс, и создается экземпляр T. Вызывается статический метод, объявленный T. Назначено статическое поле, объявленное T. Используется статическое поле, объявленное T, и поле не является постоянной переменной (§4.12.4). Когда класс инициализируется, инициализируются его суперклассы (если они не были ранее инициализированы), а также любые суперинтерфейсы (§8.1.5), которые объявляют любые методы по умолчанию (§9.4.3) (если они не были ранее инициализированы). Инициализация интерфейса сама по себе не вызывает инициализацию какого-либо из его суперинтер...