Загрузка классов



Любой код написанный на java компилируется в байт код. Байт код интерпретируется в машинный код, но перед этим он загружается в оперативную память устройства.
Загрузка осуществляется загрузчиками, ниже схематично представлена работа и краткое описание.




Процесс загрузки более детально для Class loader <= Java 8:










Процесс загрузки более детально для Class loader => Java 9:








Подробное описание:
Процесс связывания классов и интерфейсов.




Подробное описание: