Junior — Middle
109
Можете ли објаснити како се врши учитавање Java класа током извршавања програма?
Компаније где су питане
Одговор од АИ
sobes.tech АИ
Загрузка Java-классов происходит с помощью специального компонента JVM — загрузчика классов (ClassLoader). Когда программа обращается к классу впервые, ClassLoader ищет соответствующий файл с байт-кодом (.class) в определённых местах (например, в classpath), загружает его в память и преобразует в структуру данных, понятную JVM.
Процесс загрузки включает три основных этапа:
- Загрузка (Loading) — чтение байт-кода класса и создание объекта Class.
- Связывание (Linking) — проверка корректности, подготовка (выделение памяти для статических полей) и разрешение символов.
- Инициализация (Initialization) — выполнение статических блоков и инициализация статических переменных.
Пример: при вызове Class.forName("com.example.MyClass") происходит загрузка и инициализация класса MyClass.
Также существуют разные типы загрузчиков: Bootstrap ClassLoader (загружает базовые классы Java), Extension ClassLoader и System/Application ClassLoader, которые работают иерархически.