Geben Sie Anmerkungen in Java ein

Geben Sie Anmerkungen in Java ein

Mit der Einführung von Java 8 hat die Version zwei neue Funktionen eingeführt, die sich wiederholende Anmerkungen und Typanmerkungen nennen. Wenn Sie in Java Annotationen verwenden wollten, konnten Sie dies bisher nur in den Deklarationen tun. Mit Java 8 können Sie jetzt jedem Verwendungstyp Anmerkungen hinzufügen. Wo immer Sie einen Typ verwenden (einschließlich Typen in Deklarationen, Generika und Umwandlungen), können Sie ihn mit einer Anmerkung versehen.

Syntax der Typanmerkung

Java 8 kann Typannotationen für jede Typverwendung deklarieren. Ein Beispiel ist der folgende Ausschnitt:

@Verschlüsselte String-Daten; <@NonNull String>-Strings auflisten; myGraph = ( @Immutable Graph ) tmpGraph; Sie können einfach eine neue Typanmerkung einfügen. Der Vorgang ähnelt dem Definieren einer Annotation mit dem Ziel ElementType.TYPE_PARAMETER, ElementType.TYPE_USE oder beiden Zielen: @Target ( { ElementType.TYPE_PARAMETER, ElementType.TYPE_USE } ) public @interface Encrypted { }

Das Ziel ElementType.TYPE_PARAMETER bedeutet, dass Sie die Annotation auf die Deklaration einer Typvariablen schreiben können (zB Klasse MyClass {….}). Das Element.Type.TYPE_USE bedeutet, dass Sie die Annotation für jeden Verwendungstyp schreiben können (nämlich Typen in Deklarationen, Generika und Umwandlungen).

Sie können Anmerkungen in Klassendateien speichern, dies hat jedoch keinen Einfluss auf die Ausführung des Programms. Als Beispiel können Sie zwei File-Variablen und eine Verbindung deklarieren, wie im folgenden Code gezeigt:

Datei Datei = ….; @Encrypted File EncryptedFile = …; @Open Connection Verbindung = …; Während Sie das Programm ausführen, ist das Ergebnis dasselbe, wenn Sie eine der beiden Dateien an die Methode send() der Verbindung übergeben. Verbindung.senden (Datei); connection.send (verschlüsselte Datei);

 

Einige Beispiele für Typanmerkungen

@nonNull-Liste Liste <@NonNull String> str Arrays <@NonNegative Integer> sort @Encypted File file @Open Connection connection void DivideInteger (int a, int b) wirft @ZeroDivisior ArithmeticException

 

Hinterlasse eine Nachricht

Diese Seite verwendet Akismet, um Spam zu reduzieren. Erfahren Sie, wie Ihre Kommentardaten verarbeitet werden.