Sobes.tech
Junior — Middle

Ներկայացրեք, թե ինչ է Reflection API-ն Java-ում և ինչպես է այն օգտագործվում դասեր և դրանց օբյեկտների հետ դինամիկ աշխատելու համար։

sobes.tech AI

Պատասխան 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, не используя прямой вызов в коде.