Junior — Middle
Czy stosowałeś refleksję w swoich projektach w praktyce?
sobes.tech AI
Odpowiedź od AI
Tak, używałem refleksji w projektach Android, na przykład do dynamicznego wywoływania metod lub dostępu do prywatnych pól klas, gdy było to konieczne do implementacji elastycznej logiki lub obejścia ograniczeń API.
Przykład użycia refleksji do wywołania metody:
try {
Class<?> clazz = Class.forName("com.example.MyClass");
Method method = clazz.getDeclaredMethod("myPrivateMethod", String.class);
method.setAccessible(true); // pozwala wywołać metodę prywatną
Object instance = clazz.newInstance();
method.invoke(instance, "parametr");
} catch (Exception e) {
e.printStackTrace();
}
Należy jednak używać refleksji ostrożnie, ponieważ może ona wpływać na wydajność i bezpieczeństwo aplikacji.