The getDeclaredAnnotations() method of java.lang.Package class is used to get the declared annotations present in this class. The method returns an array of declared annotations present.
Syntax:
public DeclaredAnnotation[] getDeclaredAnnotations()
Parameter: This method does not accepts any parameter.
Return Value: This method returns an array of declared annotations present.
Below programs demonstrate the getDeclaredAnnotations() method.
Example 1:
// Java program to demonstrate // getDeclaredAnnotations() method   import java.util.*; import java.lang.annotation.*;   @Deprecated public class Test {       public Object obj;       public static void main(String[] args)         throws ClassNotFoundException     {         try {             // returns the Class object for this class             Class myClass = Test. class ;               System.out.println(                 "Class represented by myClass: "                 + myClass.toString());               // Get the declared annotation             // using getDeclaredAnnotations() method             System.out.println(                 "DeclaredAnnotation of myClass: "                 + Arrays.toString(                       myClass.getDeclaredAnnotations()));         }         catch (Exception e) {             System.out.println(e);         }     } } |
Class represented by myClass: class Test DeclaredAnnotation of myClass: [@java.lang.Deprecated()]
Example 2:
// Java program to demonstrate // getDeclaredAnnotations() method   import java.util.*; import java.lang.annotation.*;   // create a custom DeclaredAnnotation @Retention (RetentionPolicy.RUNTIME) @interface DeclaredAnnotation {       // This declared annotation has two attributes.     public String key();       public String value(); }   // call DeclaredAnnotation for method // and pass values for declared annotation @DeclaredAnnotation (key = "GFG" , value = "GeeksForGeeks" ) public class Test {       public Object obj;       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 declared annotation         // using getDeclaredAnnotations() method         System.out.println(             "DeclaredAnnotation of myClass: "             + Arrays.toString(                   myClass.getDeclaredAnnotations()));     } } |
Class represented by myClass: class Test
DeclaredAnnotation of myClass: [@DeclaredAnnotation(key=GFG, value=GeeksForGeeks)]
Reference: https://docs.oracle.com/javase/9/docs/api/java/lang/Package.html#getDeclaredAnnotations–