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

Зачем нужен ClassLoader

ClassLoader в Java загружает классы в JVM динамически во время выполнения. Он определяет, где искать классы (например, в файловой системе, сети или архивах), загружает их байт-код и создает объекты Class.

Основные причины использования:

  1. Динамическая загрузка – можно загружать классы по требованию, а не все при старте
  2. Изоляция – разные ClassLoader'ы могут загружать разные версии одного класса
  3. Безопасность – контроль над тем, какие классы могут быть загружены
  4. Гибкость – возможность загружать классы из нестандартных источников

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

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

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

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

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