Назад к вопросам
Junior — Middle
94
Можете привести пример ситуации, в которой используется механизм рефлексии в программировании?
Ответ от нейросети
sobes.tech AI
Механизм рефлексии в программировании позволяет программе исследовать и изменять свою структуру во время выполнения. В Java рефлексия часто используется для динамического доступа к классам, методам и полям.
Пример ситуации:
Допустим, у вас есть фреймворк или библиотека, которая должна работать с разными классами, имена которых известны только во время выполнения (например, загружаются из конфигурации). С помощью рефлексии можно:
- Создать экземпляр класса по имени
- Вызвать методы без прямого обращения в коде
- Получить и изменить значения полей
Class<?> clazz = Class.forName("com.example.MyClass");
Object instance = clazz.getDeclaredConstructor().newInstance();
Method method = clazz.getMethod("myMethod");
method.invoke(instance);
Это полезно в ORM, тестовых фреймворках, DI-контейнерах и плагин-системах, где нужно работать с классами и методами динамически.