diff options
| author | Sven Eisenhauer <sven@sven-eisenhauer.net> | 2023-11-10 15:11:48 +0100 |
|---|---|---|
| committer | Sven Eisenhauer <sven@sven-eisenhauer.net> | 2023-11-10 15:11:48 +0100 |
| commit | 33613a85afc4b1481367fbe92a17ee59c240250b (patch) | |
| tree | 670b842326116b376b505ec2263878912fca97e2 /Master/Reference Architectures and Patterns/hjp5/html/k100278.html | |
| download | Studium-33613a85afc4b1481367fbe92a17ee59c240250b.tar.gz Studium-33613a85afc4b1481367fbe92a17ee59c240250b.tar.bz2 | |
Diffstat (limited to 'Master/Reference Architectures and Patterns/hjp5/html/k100278.html')
| -rw-r--r-- | Master/Reference Architectures and Patterns/hjp5/html/k100278.html | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/Master/Reference Architectures and Patterns/hjp5/html/k100278.html b/Master/Reference Architectures and Patterns/hjp5/html/k100278.html new file mode 100644 index 0000000..b1396a4 --- /dev/null +++ b/Master/Reference Architectures and Patterns/hjp5/html/k100278.html @@ -0,0 +1,104 @@ +<html>
+<head>
+<title>
+Handbuch der Java-Programmierung, 5. Auflage
+</title>
+</head>
+<body>
+<a name="startofbody"></a>
+<script language="JavaScript" src="hjp4lib.js">
+</script>
+<script language="JavaScript">
+installKbdHandler("97,#startofbody;101,#endofbody;116,cover.html;122,k100003.html;115,search.html;105,index.html;100,JDKDOCS;112,APIDOCS;104,k100271.html;106,k100277.html;107,k100279.html;108,k100279.html");
+</script>
+<table border=0 cellpadding=0 cellspacing=1 width="100%">
+<tr bgcolor="#EEFFCC">
+<td width="7%" align=center bgcolor="#DDCC99"><a href="cover.html"> Titel </a>
+<td width="7%" align=center bgcolor="#DDCC99"><a href="k100003.html"> Inhalt </a>
+<td width="7%" align=center bgcolor="#DDCC99"><a href="search.html"> Suchen </a>
+<td width="7%" align=center bgcolor="#DDCC99"><a href="index.html"> Index </a>
+<td width="7%" align=center bgcolor="#DDCC99"><a href="../jdkdocs/index.html" onClick="this.href=getDocIndex()"> DOC </a>
+<td align="right">Handbuch der Java-Programmierung, 5. Auflage
+<tr bgcolor="#EEFFCC">
+<td width="7%" align=center bgcolor="#DDCC99"><a href="k100271.html"> << </a>
+<td width="7%" align=center bgcolor="#DDCC99"><a href="k100277.html"> < </a>
+<td width="7%" align=center bgcolor="#DDCC99"><a href="k100279.html"> > </a>
+<td width="7%" align=center bgcolor="#DDCC99"><a href="k100279.html"> >> </a>
+<td width="7%" align=center bgcolor="#DDCC99"><a href="../jdkdocs/api/index.html" onClick="this.href=getApiIndex()"> API </a>
+<td align="right">Kapitel 43 - Reflection
+</table>
+<hr>
+
+
+<!-- Section -->
+<a name="sectlevel2id043007"></a>
+<h2>43.7 Zusammenfassung </h2>
+<hr>
+<ul>
+<li><a href="k100278.html#sectlevel2id043007">43.7 Zusammenfassung</a>
+</ul>
+<hr>
+
+<p>
+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, dass 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 <a href="index_d.html#ixb100247"><font color=#000080><tt>double</tt></font></a>-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, dass der JIT bei Verwendung des Reflection-APIs
+praktisch keine Geschwindigkeitsvorteile bringt, denn alle nennenswerten
+Methoden sind native und können daher kaum optimiert werden.
+
+<p>
+Mit den Annotationen haben Sie schließlich ein leistungsfähiges
+Mittel kennen gelernt, wie Sie zusätzliche Informationen direkt
+in den Quellcode integrieren und auch zur Laufzeit wieder auslesen
+können.
+
+<p>
+In diesem Kapitel wurden folgende Themen behandelt:
+<ul>
+<li>Die Klassen <a href="index_o.html#ixb100224"><font color=#000080><tt>Object</tt></font></a>
+und <a href="index_c.html#ixb100641"><font color=#000080><tt>Class</tt></font></a>.
+<li>Dynamisches Laden und Instanzieren von Klassen.
+<li>Aufruf parameterloser Methoden.
+<li>Ein Hilfsprogramm zum Testen von Java-Klassen.
+<li>Aufruf parametrisierter Methoden und das automatische Aus- und
+Einpacken von primitiven Typen in Wrapperklassen.
+<li>Nachbilden von Funktionszeigern mit Reflection.
+<li>Verwenden parametrisierter Konstruktoren.
+<li>Zugriff auf Membervariablen.
+<li>Erzeugen von Arrays und Zugriff auf Array-Elemente.
+<li>Die Verwendung von Annotationen im Quellcode
+</ul>
+<hr>
+<table border=0 cellpadding=0 cellspacing=1 width="100%">
+<tr bgcolor="#EEFFCC">
+<td width="7%" align=center bgcolor="#DDCC99"><a href="cover.html"> Titel </a>
+<td width="7%" align=center bgcolor="#DDCC99"><a href="k100003.html"> Inhalt </a>
+<td width="7%" align=center bgcolor="#DDCC99"><a href="search.html"> Suchen </a>
+<td width="7%" align=center bgcolor="#DDCC99"><a href="index.html"> Index </a>
+<td width="7%" align=center bgcolor="#DDCC99"><a href="../jdkdocs/index.html" onClick="this.href=getDocIndex()"> DOC </a>
+<td align="right">Handbuch der Java-Programmierung, 5. Auflage, Addison
+Wesley, Version 5.0.1
+<tr bgcolor="#EEFFCC">
+<td width="7%" align=center bgcolor="#DDCC99"><a href="k100271.html"> << </a>
+<td width="7%" align=center bgcolor="#DDCC99"><a href="k100277.html"> < </a>
+<td width="7%" align=center bgcolor="#DDCC99"><a href="k100279.html"> > </a>
+<td width="7%" align=center bgcolor="#DDCC99"><a href="k100279.html"> >> </a>
+<td width="7%" align=center bgcolor="#DDCC99"><a href="../jdkdocs/api/index.html" onClick="this.href=getApiIndex()"> API </a>
+<td align="right">© 1998, 2007 Guido Krüger & Thomas
+Stark, <a href="http://www.javabuch.de">http://www.javabuch.de</a>
+</table>
+<a name="endofbody"></a>
+</body>
+</html>
|
