AnnotatedElement getAnnotations() method in Java with Examples

Last Updated : 3 Jan, 2020
The getAnnotations() method of java.lang.AnnotatedElement class is used to get the annotations present in the class implementing this interface. The method returns an array of annotations present. Syntax:
public Annotation[] getAnnotations()
Parameter: This method does not accepts any parameter. Return Value: This method returns an array of annotations present. Below programs demonstrate the getAnnotations() method. Example 1: Java
// Java program to demonstrate
// getAnnotations() method

import java.lang.reflect.*;
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 myAnnotatedElement
            AnnotatedElement myAnnotatedElement
                = Test.class;

            System.out.println(
                "AnnotatedElement represented"
                + " by myAnnotatedElement: "
                + myAnnotatedElement.toString());

            // Get the annotation
            // using getAnnotations() method
            System.out.println(
                "Annotation of myAnnotatedElement: "
                + Arrays.toString(
                      myAnnotatedElement
                          .getAnnotations()));
        }
        catch (Exception e) {
            System.out.println(e);
        }
    }
}
Output:
AnnotatedElement represented by myAnnotatedElement: class Test Annotation of myAnnotatedElement: [@java.lang.Deprecated()]
Example 2: Java
// Java program to demonstrate
// getAnnotations() method

import java.lang.reflect.*;
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 Object obj;

    public static void main(String[] args)
        throws ClassNotFoundException
    {

        // returns the Class object
        // for this myAnnotatedElement
        AnnotatedElement myAnnotatedElement
            = Test.class;

        System.out.println(
            "AnnotatedElement represented"
            + " by myAnnotatedElement: "
            + myAnnotatedElement.toString());

        // Get the annotation
        // using getAnnotations() method
        System.out.println(
            "Annotation of myAnnotatedElement: "
            + Arrays.toString(
                  myAnnotatedElement
                      .getAnnotations()));
    }
}
Output:
AnnotatedElement represented by myAnnotatedElement: class Test Annotation of myAnnotatedElement: [@Annotation(key=GFG, value=GeeksForGeeks)]
Reference: https://docs.oracle.com/javase/9/docs/api/java/lang/reflect/AnnotatedElement.html#getAnnotations--
Comment