Junior — Middle
Was ist die Hauptaufgabe der Reflection API im Kontext der Arbeit mit Objekten und Klassen?
sobes.tech KI
Antwort von AI
Die Reflection-API in Java ermöglicht es, zur Laufzeit programmgesteuert die Struktur von Klassen, Objekten, Methoden und Feldern zu untersuchen und zu ändern.
Die Hauptaufgabe besteht darin, dynamisch Informationen über Klassen zu erhalten (z.B. ihre Methoden, Felder, Konstruktoren), Objekte zu erstellen, Methoden aufzurufen und Felder zu ändern, ohne sie zur Compile-Zeit zu kennen.
Dies ist nützlich für Frameworks, Bibliotheken, Serialisierungstools, Tests und andere Fälle, in denen mit unbekannten Klassen gearbeitet werden muss.
Beispiel für die Verwendung von Reflection zum Aufruf einer Methode:
import java.lang.reflect.Method;
public class ReflectionExample {
public static void main(String[] args) throws Exception {
Class<?> clazz = Class.forName("java.lang.String");
Method method = clazz.getMethod("toUpperCase");
String str = "hello";
String result = (String) method.invoke(str);
System.out.println(result); // HELLO
}
}