AnnotatedElement getDeclaredAnnotationsByType() method in Java with Examples
The getDeclaredAnnotations() method of java.lang.AnnotatedElement class is used to get the declared annotations of the specified declared annotation type present in the class implementing this interface. The method returns an array of declared annotations for the specified declared annotation type.
Syntax:
public A[] getDeclaredAnnotationsByType(Class<T> 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:
- NullPointerException: if the given declared annotation class is null.
Below programs demonstrate the getDeclaredAnnotationsByType() method.
Example 1:
import java.util.*;
import java.lang.reflect.*;
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
{
AnnotatedElement myAnnotatedElement
= Test. class ;
System.out.println(
"AnnotatedElement represented"
+ " by myAnnotatedElement: "
+ myAnnotatedElement.toString());
System.out.println(
"DeclaredAnnotation of myAnnotatedElement"
+ " of type DeclaredAnnotation: "
+ Arrays.toString(
myAnnotatedElement
.getDeclaredAnnotationsByType(
DeclaredAnnotation. class )));
}
}
|
Output:
AnnotatedElement represented by myAnnotatedElement: class Test
DeclaredAnnotation of myAnnotatedElement of type DeclaredAnnotation: [@DeclaredAnnotation(key=GFG, value=GeeksForGeeks)]
Example 2:
import java.util.*;
import java.lang.reflect.*;
import java.lang.annotation.*;
@Deprecated
public class Test {
public Object obj;
public static void main(String[] args)
throws ClassNotFoundException
{
try {
AnnotatedElement myAnnotatedElement
= Test. class ;
System.out.println(
"AnnotatedElement represented"
+ " by myAnnotatedElement: "
+ myAnnotatedElement.toString());
System.out.println(
"DeclaredAnnotation of myAnnotatedElement"
+ " of type Deprecated: "
+ Arrays.toString(
myAnnotatedElement
.getDeclaredAnnotationsByType(
Deprecated. class )));
}
catch (Exception e) {
System.out.println(e);
}
}
}
|
Output:
AnnotatedElement represented by myAnnotatedElement: class Test
DeclaredAnnotation of myAnnotatedElement of type Deprecated: [@java.lang.Deprecated()]
Reference: https://docs.oracle.com/javase/9/docs/api/java/lang/reflect/AnnotatedElement.html#getAnnotationsByType-java.lang.Class-
Last Updated :
03 Jan, 2020
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...