Назад к вопросам
Junior — Middle
65
Объясните, что такое Reflection API в Java и как оно используется для динамической работы с классами и их объектами.
Ответ от нейросети
sobes.tech AI
Reflection API в Java позволяет программе во время выполнения получать информацию о классах, методах, полях и конструкторах, а также создавать объекты и вызывать методы динамически, без знания их на этапе компиляции. Это полезно для создания гибких и расширяемых приложений, например, в фреймворках, инструментах тестирования или при работе с аннотациями.
Пример использования Reflection для вызова метода:
Class<?> clazz = Class.forName("java.lang.String");
Method method = clazz.getMethod("substring", int.class, int.class);
String str = "Hello, world!";
String result = (String) method.invoke(str, 7, 12); // "world"
Здесь мы динамически получили класс String, метод substring и вызвали его на объекте str, не используя прямой вызов в коде.