Anmerkungsimplementierungsprinzip
1. Was sind Anmerkungen?
Diese Frage dürften viele Erstentwickler haben? Annontation ist eine neue Funktion, die in Java5 eingeführt wurde, und ihr chinesischer Name ist Annotation. Es bietet einen sicheren annotationsähnlichen Mechanismus zum Verknüpfen beliebiger Informationen oder Metadaten mit Programmelementen (Klassen, Methoden, Mitgliedsvariablen usw.). Fügen Sie den Elementen des Programms (Klassen, Methoden, Mitgliedsvariablen) intuitivere und klarere Beschreibungen hinzu. Diese Beschreibungen haben nichts mit der Geschäftslogik des Programms zu tun und werden von bestimmten Tools oder Frameworks verwendet. Annotation ist wie ein Modifikator, der auf die Deklarationsanweisungen von Paketen, Typen, Konstruktoren, Methoden, Mitgliedsvariablen, Parametern und lokalen Variablen angewendet wird.
Java-Anmerkungen sind einige an den Code angehängte Metainformationen, die von einigen Tools zum Parsen und Verwenden während der Kompilierung und Laufzeit verwendet werden und als Erklärungs- und Konfigurationsfunktionen dienen. Anmerkungen haben und können keinen Einfluss auf die eigentliche Logik des Codes haben, sondern nur eine unterstützende Rolle spielen. Im Paket java.lang.annotation enthalten.
2. Die Verwendung von Anmerkungen:
1. Dokumente generieren. Dies ist die häufigste und früheste von Java bereitgestellte Annotation. Zu den häufig verwendeten gehören @param @return usw.
2. Verfolgen Sie Codeabhängigkeiten und implementieren Sie alternative Konfigurationsdateifunktionen. Beispielsweise wird die Abhängigkeitsinjektion von Dagger 2 in der zukünftigen Java-Entwicklung von großem Nutzen sein, da sie eine große Anzahl von Anmerkungen konfiguriert.
3. Führen Sie eine Formatprüfung zur Kompilierungszeit durch. Wenn beispielsweise @override vor einer Methode platziert wird und Ihre Methode die Methode der Oberklasse nicht überschreibt, kann sie zur Kompilierungszeit überprüft werden.
3. Das Prinzip der Annotation:
Das Wesentliche der Annotation ist eine spezielle Schnittstelle, die Annotation erbt, und ihre spezifische Implementierungsklasse ist ein generierter dynamischer Proxy nach Java-Laufzeitart. Wenn wir Anmerkungen durch Reflektion erhalten, wird das von der Java-Laufzeit generierte dynamische Proxy-Objekt $Proxy1 zurückgegeben. Der Aufruf einer benutzerdefinierten Annotationsmethode (Schnittstellenmethode) über ein Proxy-Objekt ruft schließlich die Aufrufmethode von AnnotationInvocationHandler auf. Diese Methode indiziert den entsprechenden Wert aus der memberValues Map. Die Quelle von memberValues ist der Java-Konstantenpool.
Empfohlenes Tutorial: „Java-Tutorial“
Das obige ist der detaillierte Inhalt vonWas ist das Implementierungsprinzip von Java-Annotationen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!