📜  Java中的类 getDeclaredAnnotation() 方法和示例(1)

📅  最后修改于: 2023-12-03 14:42:58.547000             🧑  作者: Mango

Java中的类 getDeclaredAnnotation() 方法和示例

在Java中,getDeclaredAnnotation(Class<T> annotationClass) 方法可以用于获取指定类的注解。这个方法可以返回指定注解类型的注解,或者在该类上不存在该注解时返回null

语法

下面是getDeclaredAnnotation() 方法的语法:

<注解类型> getDeclaredAnnotation(Class<注解类型> annotationClass)

其中,参数annotationClass 是要获取的注解的类型。

返回值

getDeclaredAnnotation() 方法的返回值是指定注解类型的注解实例,如果该类上不存在指定的注解,则返回null

示例

下面是一个示例,演示了如何使用getDeclaredAnnotation() 方法来获取类的注解:

import java.lang.annotation.*;

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
@interface MyAnnotation {
    String value();
}

@MyAnnotation("这是一个示例注解")
class MyClass {
    // ...
}

public class Main {
    public static void main(String[] args) {
        Class<MyClass> clazz = MyClass.class;
        MyAnnotation annotation = clazz.getDeclaredAnnotation(MyAnnotation.class);
        
        if (annotation != null) {
            System.out.println("注解的值:" + annotation.value());
        } else {
            System.out.println("该类上不存在指定注解");
        }
    }
}

以上示例中,我们定义了一个名为MyAnnotation的自定义注解,并在MyClass类上使用了这个注解。然后,在Main类中,我们使用getDeclaredAnnotation()方法获取MyAnnotation类型的注解,并输出注解值。

运行以上代码,输出结果为:

注解的值:这是一个示例注解

说明成功获取到了MyAnnotation类型的注解,并且获取到了注解的值。

总结

getDeclaredAnnotation() 方法可以方便地获取指定类的注解。通过与自定义注解结合使用,可以实现更加灵活和可读性强的代码。