當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Java Package getAnnotation()用法及代碼示例


如果此Package中存在這樣的注釋,則使用java.lang.Package類的getAnnotation()方法來獲取指定注釋類型的注釋。該方法以對象的形式返回該Package。

用法:

public T getAnnotation(Class<T> annotationClass)

參數:此方法接受參數注釋類,它是要獲取的注釋的類型。


返回值:此方法返回注釋包的指定對象。

異常:該方法拋出:

  • NullPointerException :如果給定的注釋類為null。

下麵的程序演示了getAnnotation()方法。

範例1:

// Java program to demonstrate 
// getAnnotation() 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()); 
  
        // Get the annotation 
        // using getAnnotation() method 
        System.out.println( 
            "Annotation of myClass:"
            + myClass.getAnnotation( 
                  Annotation.class)); 
    } 
}

輸出:

Class represented by myClass:class Test
Annotation of myClass:@Annotation(key=GFG, value=GeeksForGeeks)

範例2:

// Java program to demonstrate 
// getAnnotation() method 
  
import java.util.*; 
import java.lang.annotation.*; 
  
// Class with no annotations 
// getAnnotation() will return null 
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 getAnnotation() method 
        System.out.println( 
            "Annotation of myClass:"
            + myClass.getAnnotation( 
                  Annotation.class)); 
    } 
}

輸出:

Class represented by myClass:class Test
Annotation of myClass:null

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



相關用法


注:本文由純淨天空篩選整理自guptayashgupta53大神的英文原創作品 Package getAnnotation() method in Java with Examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。