Heim >Java >javaLernprogramm >Eine ausführliche Einführung in benutzerdefinierte Java-Annotationen

Eine ausführliche Einführung in benutzerdefinierte Java-Annotationen

黄舟
黄舟Original
2017-09-25 10:37:231133Durchsuche

In diesem Artikel werden hauptsächlich relevante Informationen zur detaillierten Erläuterung von Beispielen für benutzerdefinierte Java-Anmerkungen vorgestellt. Freunde, die sie benötigen, können sich auf

Detaillierte Erläuterungen von Beispielen für benutzerdefinierte Java-Anmerkungen

beziehen

Java's Annotation wurde nach Version 5.0 eingeführt und kann zum Erstellen von Dokumentationen, zum Verfolgen von Abhängigkeiten im Code und zum Durchführen von Überprüfungen zur Kompilierungszeit verwendet werden. Anmerkungen dienen dazu, dass die virtuelle Maschine einige spezielle Funktionen des Programms sehen und darstellen kann. Das JDK bietet drei Annotationen: @Override, @SuppressWarning und @Deprecated. Es gibt auch Meta-Annotationen, @Target, @Retention, @Documented und @Inherited. Die Rolle der Meta-Annotation besteht darin, andere Annotationen zu kommentieren.

Wenn Sie Anmerkungen verstehen möchten, müssen Sie benutzerdefinierte Anmerkungen verstehen. Verständnis wird durch Reflexion erreicht.

Zuerst passen wir eine Anmerkung an,


@Retention(value=RetentionPolicy.RUNTIME) 
public @interface MyTest { 
 
}

Dann schreiben wir eine Testdemo


public class AnnotationDemo1 { 
  @MyTest 
  public void demo1(){ 
    System.out.println("方法1..."); 
  } 
   
  @MyTest 
  public void demo2(){ 
    System.out.println("方法2..."); 
  } 
  @Test 
  public void demo3(){ 
    System.out.println("方法3..."); 
  }

Abschließend werden alle Methoden mit Mytest-Annotationen in AnnotationDemo1 ausgeführt. Als nächstes folgt die laufende Klasse


public class DemoRunner { 
public static void main(String[] args) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException, InstantiationException {  
    //获得测试类的class 
    Class clazz=AnnotationDemo1.class; 
    //获得class中的所有的方法 
    Method[] mothods=clazz.getMethods(); 
    //遍历每个方法, 
    for(Method method:mothods){ 
      boolean flag = method.isAnnotationPresent(MyTest.class); 
       System.out.println(flag); 
      if(flag){ 
        // 说明方法上有MyTest注解: 
        method.invoke(clazz.newInstance(), null); 
      } 
    } 
  } 
}

Am Ende kann der Test Methode 1... und Methode 2... ausgeben, was die Implementierung benutzerdefinierter Anmerkungen erleichtert.

Das obige ist der detaillierte Inhalt vonEine ausführliche Einführung in benutzerdefinierte Java-Annotationen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn