Встречается на собеседованиях • сегодня

Как работает Java Classloader

Java ClassLoader — это часть JRE, которая динамически загружает классы в память. Иерархия загрузчиков:

  1. Bootstrap ClassLoader – загружает core Java классы (rt.jar).
  2. Extension ClassLoader – загружает классы из jre/lib/ext.
  3. Application ClassLoader – загружает классы из classpath.

Принцип работы:

  • Делегирование: Загрузчик сначала делегирует запрос родителю (родительский-first).
  • Уникальность: Класс загружается только один раз.
  • Видимость: Дочерний загрузчик видит классы родителя, но не наоборот.

Пример кастомного ClassLoader:

java
class CustomClassLoader extends ClassLoader {
    @Override
    protected Class<?> findClass(String name) throws ClassNotFoundException {
        byte[] classData = loadClassData(name); // Логика загрузки байт-кода
        return defineClass(name, classData, 0, classData.length);
    }
}
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы