Junior — Middle
¿Puedes explicar qué es la API de Reflexión y para qué se utiliza en programación?
sobes.tech AI
Respuesta de la IA
Reflection API — это механизм в языках программирования (например, в Java), который позволяет программе во время выполнения получать информацию о своих классах, методах, полях и даже изменять их поведение.
С помощью Reflection можно:
- Узнавать структуру классов (имена методов, полей, конструкторов).
- Создавать объекты динамически.
- Вызывать методы и получать/устанавливать значения полей.
Это полезно для фреймворков, которые работают с объектами без знания их типов на этапе компиляции, например, для сериализации, внедрения зависимостей, тестирования.
Пример использования Reflection в Java:
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"
Reflection мощный, но может снижать производительность и нарушать инкапсуляцию, поэтому использовать его стоит осмотрительно.