当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java Package isAnnotationPresent()用法及代码示例


java.lang.Package类的isAnnotationPresent()方法用于检查此类中是否存在指定注释类型的注释。该方法返回一个声明相同的布尔值。

用法:

public boolean isAnnotationPresent(Class<T> annotationClass)

参数:此方法接受参数注释类,它是要获取的注释的类型。


返回值:此方法返回声明相同的布尔值。

异常:该方法抛出:

  • NullPointerException :如果给定的注释类为null。

下面的程序演示了isAnnotationPresent()方法。

范例1:

// Java program to demonstrate 
// isAnnotationPresent() method 
  
import java.util.*; 
import java.lang.annotation.*; 
  
// create a custom Annotation 
@Retention(RetentionPolicy.RUNTIME) 
@interface Annotation { 
  
    // This annotation has two attributes. 
    public String key(); 
  
    public String value(); 
} 
  
// call Annotation for method 
// and pass values for annotation 
@Annotation(key = "GFG", value = "GeeksForGeeks") 
public class Test { 
  
    public static void main(String[] args) 
        throws ClassNotFoundException 
    { 
  
        // returns the Class object for this class 
        Class myClass = Test.class; 
  
        System.out.println("Class represented by myClass:"
                           + myClass.toString()); 
  
        // Check if there is any annotation 
        // using isAnnotationPresent() method 
        System.out.println( 
            "If there is any annotation in myClass:"
            + myClass.isAnnotationPresent( 
                  Annotation.class)); 
    } 
}

输出:

Class represented by myClass:class Test
If there is any annotation in myClass:true

范例2:

// Java program to demonstrate 
// isAnnotationPresent() method 
  
import java.util.*; 
import java.lang.annotation.*; 
  
// Class with no annotations 
public class Test { 
  
    public static void main(String[] args) 
        throws ClassNotFoundException 
    { 
  
        // returns the Class object for this class 
        Class myClass = Test.class; 
  
        System.out.println("Class represented by myClass:"
                           + myClass.toString()); 
  
        // Get the annotation 
        // using isAnnotationPresent() method 
        System.out.println( 
            "If there is any annotation in myClass:"
            + myClass.isAnnotationPresent( 
                  Annotation.class)); 
    } 
}

输出:

Class represented by myClass:class Test
If there is any annotation in myClass:false

参考: https://docs.oracle.com/javase/9/docs/api/java/lang/Package.html#isAnnotationPresent-java.lang.Class-



相关用法


注:本文由纯净天空筛选整理自guptayashgupta53大神的英文原创作品 Package isAnnotationPresent() method in Java with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。