この記事では主に Java カスタム アノテーションの詳細な説明に関する関連情報を紹介します。必要な方は参考にしてください
java カスタム アノテーションの詳細な説明
Java のアノテーションはバージョン 5.0 以降に導入され、使用できます。ドキュメントの作成、コード内の依存関係の追跡に役立ち、コンパイル時のチェックを実行できます。注釈は、仮想マシンがプログラムのいくつかの特別な機能を確認および表現するためのものです。 JDK は、@Override、@SuppressWarning、@Deprecated の 3 つのアノテーションを提供します。メタ アノテーション、@Target、@Retention、@Documented、および @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..."); }
最後に、AnnotationDemo1 内のすべての 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... が出力できるため、カスタム アノテーションの実装が容易になります。
以上がJava カスタム アノテーションの詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。