Titel | Inhalt | Suchen | Index | API | Go To Java 2, Zweite Auflage, Handbuch der Java-Programmierung |
<< | < | > | >> | Kapitel 43 - Reflection |
Das Reflection-API ist ohne Zweifel ein wichtiger Bestandteil von Java. Es ist nicht nur Grundlage der Beans- und Serialisierungs-APIs, sondern eröffnet dem Tool-Entwickler auch eine Fülle von Möglichkeiten und Freiheiten bei der Entwicklung allgemein verwendbarer Werkzeuge. Zu beachten ist allerdings, daß Zugriffe auf Methoden und Membervariablen deutlich langsamer als bei direktem Zugriff ausgeführt werden. Im experimentellen Vergleich ergaben sich typischerweise Unterschiede um den Faktor 10 bis 100. Während auf der verwendeten Testmaschine der Aufruf einer Methode mit einem double-Parameter beispielsweise 120 ns. dauerte, wurden für denselben Aufruf per Reflection etwa 7.0 µs. benötigt. Bei deaktiviertem Just-In-Time-Compiler erhöhte sich die Zeit für den direkten Aufruf auf 620 ns., während der Reflection-Wert mit etwa 7.2 µs. nahezu unverändert blieb. Beim Zugriff auf Membervariablen wurden ähnliche Unterschiede gemessen. Bemerkenswert ist, daß der JIT bei Verwendung des Reflection-APIs praktisch keine Geschwindigkeitsvorteile bringt, denn alle nennenswerten Methoden sind native und können daher kaum optimiert werden.
In diesem Kapitel wurden folgende Themen behandelt:
Titel | Inhalt | Suchen | Index | API | Go To Java 2, Zweite Auflage, Addison Wesley, Version 2.0 |
<< | < | > | >> | © 2000 Guido Krüger, http://www.gkrueger.com |