Sobes.tech
Back to questions
Junior — Middle
63

Какие функции и возможности предоставляет Reflection API в языке программирования?

Companies where asked
Y_lab development

Answer from AI

sobes.tech AI

Reflection API в Java позволяет программе исследовать и изменять структуру и поведение объектов во время выполнения. Основные возможности:

  • Получение информации о классах, интерфейсах, методах, полях, конструкторах.
  • Создание новых экземпляров классов динамически.
  • Вызов методов и доступ к полям объектов, даже если они приватные (с помощью setAccessible).
  • Анализ аннотаций.

Пример использования:

Class<?> clazz = Class.forName("java.util.ArrayList");
Object instance = clazz.getDeclaredConstructor().newInstance();
Method addMethod = clazz.getMethod("add", Object.class);
addMethod.invoke(instance, "Hello");
System.out.println(instance);

Reflection полезен для фреймворков, сериализации, тестирования и динамического программирования.