Kapitel 21 Reflection
Aber für was ist das gut?
- Advanced Computing Systems Division von IBM, 1968, zum Microchip
21.1 Einfach mal reinschauen
Das Reflection-Modell erlaubt es uns, Klassen und Objekte, die zur Laufzeit von der JVM im Speicher gehalten werden, zu untersuchen und in begrenztem Umfang zu modifizieren. Das Konzept der Reflection (oder auch Introspektion) wird dann besonders interessant, wenn wir uns näher mit Java-Beans beschäftigen oder wir Hilfsprogramme zum Debuggen oder GUI-Builder schreiben. Diese Programme nennen sich auch Meta-Programme, da sie auf den Klassen und Objekten anderer Programme operieren. Reflection fällt daher auch in die Schlagwortkategorie Meta-Programming.
In den folgenden Abschnitten versuchen wir zunächst, die verfügbaren Informationen über eine Klasse zu eruieren. Dann erzeugen wir eigenständig Objekte und rufen Methoden auf. Im Unterschied zur herkömmlichen Programmierung in Java müssen wir hier beim Schreiben des Programms noch nicht wissen, wie die Klasse heißt, von der ein Exemplar erzeugt werden soll.
|