Galileo Computing :: Java 7 - Mehr als eine Insel - 18 Reflection und Annotationen
Galileo Computing < openbook > Galileo Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Vorwort
1 Neues in Java 7
2 Threads und nebenläufige Programmierung
3 Datenstrukturen und Algorithmen
4 Raum und Zeit
5 Dateien, Verzeichnisse und Dateizugriffe
6 Datenströme
7 Die eXtensible Markup Language (XML)
8 Dateiformate
9 Grafische Oberflächen mit Swing
10 Grafikprogrammierung
11 Netzwerkprogrammierung
12 Verteilte Programmierung mit RMI
13 RESTful und SOAP Web-Services
14 JavaServer Pages und Servlets
15 Applets
16 Datenbankmanagement mit JDBC
17 Technologien für die Infrastruktur
18 Reflection und Annotationen
19 Dynamische Übersetzung und Skriptsprachen
20 Logging und Monitoring
21 Java Native Interface (JNI)
22 Sicherheitskonzepte
23 Dienstprogramme für die Java-Umgebung
Stichwort

Download:
- openbook, ca. 21,3 MB
Buch bestellen
Ihre Meinung?

Spacer
Java 7 - Mehr als eine Insel von Christian Ullenboom
Das Handbuch zu den Java SE-Bibliotheken
Buch: Java 7 - Mehr als eine Insel

Java 7 - Mehr als eine Insel
Galileo Computing
1433 S., 2012, geb.
49,90 Euro, ISBN 978-3-8362-1507-7
Pfeil 18 Reflection und Annotationen
Pfeil 18.1 Metadaten
Pfeil 18.1.1 Metadaten durch JavaDoc-Tags
Pfeil 18.2 Metadaten der Klassen mit dem Class-Objekt
Pfeil 18.2.1 An ein Class-Objekt kommen
Pfeil 18.2.2 Was das Class-Objekt beschreibt *
Pfeil 18.2.3 Der Name der Klasse
Pfeil 18.2.4 instanceof mit Class-Objekten *
Pfeil 18.2.5 Oberklassen finden *
Pfeil 18.2.6 Implementierte Interfaces einer Klasse oder eines Interfaces *
Pfeil 18.2.7 Modifizierer und die Klasse Modifier *
Pfeil 18.2.8 Die Arbeit auf dem Feld *
Pfeil 18.3 Attribute, Methoden und Konstruktoren
Pfeil 18.3.1 Reflections – Gespür für die Attribute einer Klasse
Pfeil 18.3.2 Methoden einer Klasse erfragen
Pfeil 18.3.3 Properties einer Bean erfragen
Pfeil 18.3.4 Konstruktoren einer Klasse
Pfeil 18.3.5 Annotationen
Pfeil 18.4 Objekte erzeugen und manipulieren
Pfeil 18.4.1 Objekte erzeugen
Pfeil 18.4.2 Die Belegung der Variablen erfragen
Pfeil 18.4.3 Eine generische eigene toString()-Methode *
Pfeil 18.4.4 Variablen setzen
Pfeil 18.4.5 Bean-Zustände kopieren *
Pfeil 18.4.6 Private Attribute ändern
Pfeil 18.4.7 Methoden aufrufen
Pfeil 18.4.8 Statische Methoden aufrufen
Pfeil 18.4.9 Dynamische Methodenaufrufe bei festen Methoden beschleunigen *
Pfeil 18.5 Eigene Annotationstypen *
Pfeil 18.5.1 Annotationen zum Laden von Ressourcen
Pfeil 18.5.2 Neue Annotationen deklarieren
Pfeil 18.5.3 Annotationen mit genau einem Attribut
Pfeil 18.5.4 Element-Werte-Paare (Attribute) hinzufügen
Pfeil 18.5.5 Annotationsattribute vom Typ einer Aufzählung
Pfeil 18.5.6 Felder von Annotationsattributen
Pfeil 18.5.7 Vorbelegte Attribute
Pfeil 18.5.8 Annotieren von Annotationstypen
Pfeil 18.5.9 Deklarationen für unsere Ressourcen-Annotationen
Pfeil 18.5.10 Annotierte Elemente auslesen
Pfeil 18.5.11 Auf die Annotationsattribute zugreifen
Pfeil 18.5.12 Komplettbeispiel zum Initialisieren von Ressourcen
Pfeil 18.5.13 Mögliche Nachteile von Annotationen
Pfeil 18.6 Zum Weiterlesen

18 Reflection und AnnotationenZur nächsten Überschrift

»Aber wofür soll das gut sein?«
– Advanced Computing Systems Division von IBM zum Microchip, 1968

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) ist besonders bei JavaBeans oder Hilfsprogrammen zum Debuggen oder bei GUI-Buildern interessant. Diese Programme heißen auch Metaprogramme, da sie auf den Klassen und Objekten anderer Programme operieren. Reflection fällt daher auch in die Schlagwortkategorie »Meta-Programming«.


Galileo Computing - Zum Seitenanfang

18.1 MetadatenZur nächsten ÜberschriftZur vorigen Überschrift

Ein Metadatum ist eine Information über eine Information. In Java beschreibt ein Class-Objekt, was Typen wie Klassen so »können«, also welche Konstruktoren und Methoden sie haben, welche Attribute sie besitzen und wie die Erweiterungsbeziehungen sind.


Galileo Computing - Zum Seitenanfang

18.1.1 Metadaten durch JavaDoc-TagsZur vorigen Überschrift

Seit den ersten Java-Versionen gibt es die JavaDoc-Tags, die besondere Metadaten darstellen. So ist im folgenden Beispiel die Methode veraltet, weil das JavaDoc-Tag @deprecated gesetzt ist:

/**
* Sets the day of the month of this <tt>Date</tt>object to the specified value. ....
* @deprecated As of JDK version 1.1, replaced by ....
*/
@Deprecated
public void setDate( int date ) {
getCalendarDate().setDayOfMonth( date );
}

In diesem Fall gilt das JavaDoc-Tag für genau eine Methode, die dann als annotiert gilt. Die Beschreibungen können aber noch weiter gehen und müssen nicht nur auf Methodenebene bleiben. So annotiert das Tag @author den Autor und damit gleich eine ganze Klasse oder Schnittstelle.

Um die in Kommentaren eingesetzten JavaDoc-Tags muss sich der Java-Compiler nicht kümmern, obwohl er @deprecated eine Ausnahme zugesteht. Es ist Aufgabe des externen Programms javadoc – eines sogenannten Doclets –, aus diesen Kommentaren etwas zu machen, etwa eine Sammlung von verknüpften HTML-Dokumenten.



Ihr Kommentar

Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.







<< zurück
  Zum Katalog
Zum Katalog: Java 7 – Mehr als eine Insel
Java 7 – Mehr als eine Insel
Jetzt bestellen


 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchempfehlungen
Zum Katalog: Java und XML






 Java und XML


Zum Katalog: Einstieg in Eclipse 3.7






 Einstieg in
 Eclipse 3.7


Zum Katalog: Android 3






 Android 3


Zum Katalog: NetBeans Platform 7






 NetBeans Platform 7


Zum Katalog: Java ist auch eine Insel






 Java ist
 auch eine Insel


Zum Katalog: Apps entwickeln für Android 4






 Apps entwickeln
 für Android 4


Zum Katalog: Java 7






 Java 7


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo




Copyright © Galileo Press 2012
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Galileo Computing]

Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de