Назад к вопросам
СБЕР
Junior — Middle
65
Какой у вас опыт использования рефлексии в программировании?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
Рефлексия в Java позволяет динамически исследовать и изменять структуру классов, методов и полей во время выполнения программы. Я использовал рефлексию для создания универсальных библиотек, например, для сериализации объектов в JSON, где нужно было обходить поля объектов без знания их структуры заранее.
Пример использования рефлексии для вызова метода по имени:
import java.lang.reflect.Method;
public class ReflectionExample {
public void sayHello() {
System.out.println("Hello, reflection!");
}
public static void main(String[] args) throws Exception {
ReflectionExample obj = new ReflectionExample();
Method method = obj.getClass().getMethod("sayHello");
method.invoke(obj); // вызов метода sayHello через рефлексию
}
}
Рефлексия полезна для фреймворков, тестирования, динамической загрузки классов, но её стоит использовать с осторожностью из-за потери производительности и безопасности.