AnnotationMirror (Java Platform SE 8 )
Keywords: javax.lang.model.element.AnnotationMirror interface
Date: 2026-04-17

compact3
javax.lang.model.element

## Interface AnnotationMirror

-     public interface AnnotationMirror

  Represents an annotation. An annotation associates a value with each element of an annotation type.

  Annotations should be compared using the `equals` method. There is no guarantee that any particular annotation will always be represented by the same object.

  Since:
    1.6

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `DeclaredType` | `getAnnotationType()` Returns the type of this annotation.
    `Map<? extends ExecutableElement,? extends AnnotationValue>` | `getElementValues()` Returns the values of this annotation's elements.

- - ### Method Detail

    - #### getAnnotationType

          DeclaredType getAnnotationType()

      Returns the type of this annotation.
      Returns:
        the type of this annotation

    - #### getElementValues

          Map<? extends ExecutableElement,? extends AnnotationValue> getElementValues()

      Returns the values of this annotation's elements. This is returned in the form of a map that associates elements with their corresponding values. Only those elements with values explicitly present in the annotation are included, not those that are implicitly assuming their default values. The order of the map matches the order in which the values appear in the annotation's source.

      Note that an annotation mirror of a marker annotation type will by definition have an empty map.

      To fill in default values, use `getElementValuesWithDefaults`.

      Returns:
        the values of this annotation's elements, or an empty map if there are none

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.