Class getDeclaredAnnotationsByType() method in Java with Examples (original) (raw)

Last Updated : 27 Dec, 2019

The getDeclaredAnnotationsByType() method of java.lang.Class class is used to get the declared annotations of the specified declared annotation type present in this class. The method returns an array of declared annotations for the specified declared annotation type.

Syntax:

public A[] getDeclaredAnnotationsByType(Class declared annotationClass)

Parameter: This method accepts a parameter declared annotationClass which is the type of the declared annotation to get.

Return Value: This method returns an array of declared annotations for the specified declared annotation type.

Exception: This method throws:

Below programs demonstrate the getDeclaredAnnotationsByType() method.

Example 1:

import java.util.*;

import java.lang.annotation.*;

@Retention (RetentionPolicy.RUNTIME)

@interface DeclaredAnnotation {

`` public String key();

`` public String value();

}

@DeclaredAnnotation (key = "GFG" , value = "GeeksForGeeks" )

public class Test {

`` public Object obj;

`` public static void main(String[] args)

`` throws ClassNotFoundException

`` {

`` Class myClass = Test. class ;

`` System.out.println(

`` "Class represented by myClass: "

`` + myClass.toString());

`` System.out.println(

`` "DeclaredAnnotation of myClass of type DeclaredAnnotation: "

`` + Arrays.toString(

`` myClass

`` .getDeclaredAnnotationsByType(

`` DeclaredAnnotation. class )));

`` }

}

Output:

Class represented by myClass: class Test
DeclaredAnnotation of myClass of type DeclaredAnnotation: [@DeclaredAnnotation(key=GFG, value=GeeksForGeeks)]

Example 2:

import java.util.*;

import java.lang.annotation.*;

@Deprecated

public class Test {

`` public Object obj;

`` public static void main(String[] args)

`` throws ClassNotFoundException

`` {

`` try {

`` Class myClass = Test. class ;

`` System.out.println(

`` "Class represented by myClass: "

`` + myClass.toString());

`` System.out.println(

`` "DeclaredAnnotation of myClass of type Deprecated: "

`` + Arrays.toString(

`` myClass

`` .getDeclaredAnnotationsByType(

`` Deprecated. class )));

`` }

`` catch (Exception e) {

`` System.out.println(e);

`` }

`` }

}

Output:

Class represented by myClass: class Test
DeclaredAnnotation of myClass of type Deprecated: [@java.lang.Deprecated()]

Reference: https://docs.oracle.com/javase/9/docs/api/java/lang/Class.html#getDeclaredAnnotationsByType-java.lang.Class-