Back to questions
СБЕР
Junior — Middle
64
Можете объяснить, что такое Reflection API и для чего оно применяется в программировании?
Companies where asked
Передовые Платежные Решения
Y_lab development
Answer from AI
sobes.tech AI
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 мощный, но может снижать производительность и нарушать инкапсуляцию, поэтому использовать его стоит осмотрительно.