java  カスタムコメントの例の詳細

1742 ワード

java  カスタムコメントの例の詳細
JavaのAnnotationは5.0バージョンの後に導入されたもので、ドキュメントを作成し、コードに依存性を追跡するために使用でき、コンパイル時期のチェックを実行することができます。注释は仮想マシンに見せるもので、プログラムのいくつかの特殊な機能を表しています。JDKは@Override、@Suppress Warning、@Deprecatedの3つの注釈を提供しています。元の注釈がある場合、@Target、@Retention、@Dcumented、@Inherited、元の注釈の役割は他の注釈を注釈しています。
    注釈を知るには、カスタム注釈を理解し、反射によって実現されることを理解する必要があります。
    まず、注釈をカスタマイズします。

@Retention(value=RetentionPolicy.RUNTIME) 
public @interface MyTest { 
 
} 
   そしてテストデモをもう一つ書きます。

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..."); 
  } 
   最後にAnnotationDemo 1のすべてのMytest注釈を持つ方法を実行させます。次は運転クラスです。

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); 
      } 
    } 
  } 
} 
  最後のテストは方法1と方法2を出力します。これで簡単にユーザー定義の注釈ができます。
疑問があれば、メッセージをお願いします。あるいは、当駅のコミュニティで交流して討論してください。ありがとうございます。