AnnotationMirror (Java SE 13 & JDK 13 )
Description: declaration: module: java.compiler, package: javax.lang.model.element, interface: AnnotationMirror
Keywords: javax.lang.model.element.AnnotationMirror interface

Module java.compiler
Package 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

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

- ## Method Details

  - ### 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