Что на самом деле означает «Когда класс загружен»?

Говорят, что статические блоки в java запускаются только один раз, когда этот класс загружен. Но что это на самом деле означает? В какой момент класс загружается с помощью JVM (виртуальной машины Java)?

Это когда вызывается основной метод этого класса? И все ли суперклассы одного и того же класса также загружаются, когда основной метод начинает выполнение?

Учтите, что A расширяет B, а B расширяет C. Все они имеют статические блоки. Если у A есть основной метод, то какова будет последовательность выполнения статических блоков?

16
задан whitehat 18 December 2011 в 08:11
поделиться