Einführung Anmerkungen in Java

Anmerkungen wurden in der 1.5-Version des Java Development Kit (JDK) eingeführt oder wurden verfügbar. Anmerkungen in Java enthalten weitere Informationen zu den in der Codestruktur vorhandenen Daten, dh es handelt sich um Daten, die auch als Metadaten bezeichnet werden.

Was sind Anmerkungen in Java?

Anmerkungen helfen dabei, Metadaten in Code auf standardisierte Weise zu definieren. Außerdem helfen Anmerkungen dabei, Ihrem Java-Compiler Anweisungen zu geben, die er beim Kompilieren dieses Java-Codes befolgen muss.

Bei Verwendung der Anmerkungen verwenden wir das @ -Zeichen und anschließend den Namen Ihrer Anmerkung, sodass der Compiler sie als Anmerkung behandelt. Es ist wichtig zu beachten, dass die Anmerkungen hinzugefügt werden können, bevor

  • Eine Klassendeklaration
  • Eine Member-Variablendeklaration
  • Eine Konstruktordeklaration
  • Eine Methodendeklaration
  • Eine Parameterdeklaration
  • Eine lokale Variablendeklaration.

Wichtige Punkte, an die Sie denken sollten, sind, dass alle Anmerkungen die Schnittstelle java.lang.annotation.Annotation erweitern. Außerdem dürfen Anmerkungen keine extended-Klausel enthalten.

Integrierte Java-Anmerkungen

In Java gibt es integrierte Annotationen wie @Override, @Deprecated, @SuppressWarnings, die für einen bestimmten Zweck entwickelt und in einer der oben genannten Situationen verwendet werden, z. B. nur für die Klasse oder nur für die Methode. etc.

Beispiel # 1 -Override

class Dad (
public void say() (
System.out.println("Do your homework");
)
)
public class Child extends Dad (
@Override
public void say()(
System.out.println("I wanna play");
)
public static void main(String args())(
Dad daddy = new Child();
daddy.say();
)
)

Ausgabe

Beispiel # 2 - Veraltet

public class Outdated
(
@Deprecated
public void oldShow()
(
System.out.println("This Method is deprecated"); )
public static void main(String args())
(
Outdated od = new Outdated ();
od.oldShow();
)
)

Ausgabe

Meta-Anmerkungen

Es gibt fünf Arten von Meta-Annotationen:

  1. Dokumentiert - Hiermit wird mitgeteilt, dass das Element oder die Variable oder die Klasse, die diese Annotation verwendet, von Javadoc oder einem ähnlichen verfügbaren Tool dokumentiert werden muss.
  2. Ziel - Hiermit wird festgelegt, bei welchem ​​Typ die Anmerkung verwendet wird. Es wird hauptsächlich zusammen mit Ihren benutzerdefinierten Anmerkungen verwendet.
  3. Geerbt - Markiert die Annotation, die an die Unterklasse vererbt werden soll.
  4. Aufbewahrung - Gibt an, wie lange Anmerkungen mit dem mit Anmerkungen versehenen Typ aufbewahrt werden sollen. Es wird das Argument Retention Policy verwendet, dessen mögliche Werte sind: SOURCE, CLASS und RUNTIME.
  5. Wiederholbar - Hiermit wird angezeigt, dass die Anmerkungstypen, deren Deklaration mit Anmerkungen versehen ist, wiederholbar sind.

Beispiel - Dokumentation und Aufbewahrung

import java.lang.annotation.*;
@Retention(RetentionPolicy.RUNTIME)
@interface RSample (
String rentent();
)
@Documented
@interface DSample (
String doc();
)
public class MetaAnnotate (
public static void main(String arg())
(
new MetaAnnotate().rentent();
new MetaAnnotate().doc();
)
@RSample (rentent="Meta Info R")
public void rentent() (
System.out.println("Retention Policy Applied");
)
@DSample(doc="Meta Info D")
public void doc() (
System.out.println("Code Documented with the value");
)
)

Ausgabe

Erläuterung

RetentionPolicy.RUNTIME - Dieser Wert gibt an, dass der Annotation-Wert zur Laufzeit zur Überprüfung über Java Reflection verfügbar sein soll.

Führen Sie den Javadoc-Befehl aus, um die Dokumentation Ihres Codes anzuzeigen.

Arten von Anmerkungen

Es gibt drei Kategorien von Anmerkungen:

1. Markierungsannotationen - Diese Arten von Annotationen werden als Deklaration verwendet, um den Entwickler darüber zu informieren, worum es bei der folgenden Funktion oder Klasse geht, dh es werden zusätzliche Informationen über die Funktion oder Klasse ausgetauscht, z. B. ob die Funktion eine andere Funktion überschreibt oder ob die Funktion veraltet ist usw. @Override, @Deprecated werden als Markierungsanmerkungen betrachtet.

Beispiel: DemoAnnotation ()

2. Einzelwert-Annotationen - Diese Art von Annotation verwendet den Wert, um den Wert für das Mitglied anzugeben, vor dem die Annotation platziert ist, und muss daher nicht den Namen dieses Mitglieds angeben.

Beispiel: DemoAnnotation ("custId123")

3. Vollständige Anmerkungen - Diese Art der Anmerkung umfasst mehrere Werte, Paare und Elemente.

Beispiel: DemoAnnotation (Kategorie = ”Spielzeug”, Wert = 1500)

Benutzerdefiniert

Benutzerdefinierte Anmerkungen werden von der Benutzeroberfläche erstellt, gefolgt von einem Anmerkungsnamen, wie im folgenden Beispiel gezeigt.

Datei 1: Benutzerdefinierte Anmerkung definiert

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@Target((ElementType.TYPE, ElementType.METHOD))
@Retention(RetentionPolicy.RUNTIME)
@interface Magicians
(
String Wizard() default "Reynolds";
String House() default "Green";
)
@Magicians
public class Magician
(
@Magicians(Wizard = "Harry Potter", House = "Red")
public String getString() ( return null; )
)

Datei 2: Hauptklasse, die die benutzerdefinierte Anmerkungsklasse aufruft

import java.lang.annotation.Annotation;
import java.lang.reflect.AnnotatedElement;
import java.lang.reflect.Method;
public class MyCustomAnnotation
(
public static void main(String() args) throws NoSuchMethodException, SecurityException
(
new Magician();
Class magic = Magician.class;
readAnnotationOn(magic);
Method method = magic.getMethod("getString", new Class()());
readAnnotationOn(method);
)
static void readAnnotationOn(AnnotatedElement element)
(
try
(
System.out.println("\n Find annotations on " + element.getClass().getName());
Annotation() annotations = element.getAnnotations();
for (Annotation annotation : annotations)
(
if (annotation instanceof Magicians)
(
Magicians mData = (Magicians) annotation;
System.out.println("Wizard Name :" + mData.Wizard());
System.out.println("Wizard House Color :" + mData.House());
)
)
) catch (Exception e)
(
e.printStackTrace();
)
)
)

Ausgabe

Fazit

In diesem Artikel haben wir anhand von Beispielen erfahren, was Java-Anmerkungen und ihre Typen sind. Außerdem haben wir Beispiele für von Java bereitgestellte integrierte Anmerkungen gesehen und unsere benutzerdefinierten Anmerkungen codiert.

Wir haben gelernt, dass Annotationen nützlich sind, um den Code zu standardisieren und das Verständnis des Codes und seiner Struktur zu verbessern.

Empfohlene Artikel

Dies ist eine Anleitung zu Java-Anmerkungen. Hier diskutieren wir, wie man Java-Annotationen mit den gegebenen Beispielen und Ausgaben einbaut. Sie können sich auch die folgenden Artikel ansehen, um mehr zu erfahren -

  1. Variablen in Java
  2. Muster in Java
  3. Schnelles Sortieren in Java
  4. Beste Java-Compiler
  5. instanceOf in Java mit Example