Встречается на собеседованиях • сегодня
Как Java загружает классы
Java загружает классы с помощью механизма ClassLoader, который работает по принципу делегирования. Процесс загрузки включает:
- Bootstrap ClassLoader – загружает основные классы Java (из
rt.jarи других системных библиотек). - Extension ClassLoader – загружает классы из
jre/lib/ext. - Application (System) ClassLoader – загружает классы из classpath.
Порядок загрузки (Delegation Model):
- Запрос сначала передаётся родительскому ClassLoader.
- Если родитель не может загрузить класс, текущий загрузчик пытается сделать это сам.
Пример:
java
Class<?> clazz = Class.forName("com.example.MyClass");
// или через ClassLoader
ClassLoader loader = MyClass.class.getClassLoader();
Class<?> clazz = loader.loadClass("com.example.MyClass");Примечания:
- Класс загружается только один раз (кешируется в JVM).
- Можно создавать кастомные ClassLoader для динамической загрузки (например, в плагинах).
NoClassDefFoundErrorвозникает, если класс был найден на этапе компиляции, но не во время выполнения.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы