AnnotationMirror — 어노테이션 미러 인터페이스

AnnotationMirror — 어노테이션 미러 인터페이스

AnnotationMirror는 어노테이션 하나를 나타내는 인터페이스예요. 어노테이션은 어노테이션 인터페이스의 각 요소(element)에 값을 연결해요. 즉 소스 코드에 적힌 어노테이션 한 건의 구조적 표현을 제공해요.

어노테이션은 equals 메서드로 비교해야 해요. 특정 어노테이션이 항상 같은 객체로 표현된다는 보장은 없어요. 이 인터페이스는 javax.lang.model에서 어노테이션 처리 중 만난 어노테이션의 타입과 요소 값을 질의하는 데 쓰여요.

출처: Java API Reference

본문

선언은 다음과 같아요.

public interface AnnotationMirror

주요 메서드는 다음과 같아요.

Modifier and Type Method 설명
DeclaredType getAnnotationType() 이 어노테이션의 타입을 반환해요.
Map<? extends ExecutableElement, ? extends AnnotationValue> getElementValues() 이 어노테이션 요소들의 값을 반환해요.
  • getAnnotationType()은 어노테이션이 적용된 어노테이션 인터페이스의 타입(예: @Overridejava.lang.Override)을 DeclaredType으로 돌려줘요.
  • getElementValues()는 어노테이션에 명시된 각 요소 이름(ExecutableElement)과 그 값(AnnotationValue)의 매핑을 돌려줘요. 요소에 값을 주지 않으면 기본값이 사용돼요.

Since: 1.6.

더 알아보기 (Learn more)

Java 공식 API