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

Из чего состоит ClassLoader

ClassLoader в Java отвечает за загрузку классов в JVM. Он состоит из нескольких ключевых компонентов:

  1. Иерархия загрузчиков:
    • Bootstrap ClassLoader (нативный, загружает core Java классы)
    • Extension ClassLoader (загружает классы из jre/lib/ext)
    • Application ClassLoader (загружает классы из classpath)
  1. Механизм делегирования:

    • При запросе загрузки класса сначала проверяет родительский загрузчик
    • Если родитель не находит класс, пытается загрузить сам
  2. Основные методы:

    • loadClass() - основной метод загрузки
    • findClass() - обычно переопределяется в кастомных загрузчиках
    • defineClass() - преобразует массив байт в Class объект

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

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

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

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

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