AnnotationValue — 어노테이션 값 인터페이스
AnnotationValue — 어노테이션 값 인터페이스
AnnotationValue는 어노테이션 인터페이스 요소(element)의 값 하나를 나타내는 인터페이스예요. 어노테이션에 지정된 값은 다음 타입 중 하나예요.
- 프리미티브 타입의 래퍼 클래스(예:
Integer) StringTypeMirrorVariableElement(열거 상수)AnnotationMirrorList<? extends AnnotationValue>(값이 배열이면 선언 순서대로 요소들)
이 값들은 AnnotationMirror.getElementValues()나 어노테이션 처리 중 얻을 수 있으며, 방문자 패턴으로 조회할 수 있어요.
본문
선언은 다음과 같아요.
public interface AnnotationValue
주요 메서드는 다음과 같아요.
| Modifier and Type | Method | 설명 |
|---|---|---|
<R, P> R |
accept(AnnotationValueVisitor<R,P> v, P p) |
이 값에 방문자(visitor)를 적용해요. |
Object |
getValue() |
값을 반환해요. |
String |
toString() |
이 값의 문자열 표현을 반환해요. |
getValue()가 반환하는 객체의 런타임 타입은 위에서 나열한 값 타입 중 하나예요. 예:int값이면Integer, 문자열이면String, 타입이면TypeMirror구현체.accept(...)는 값의 타입에 따라 적절한visitXyz메서드로 디스패치해요. 이걸로 컴파일 시점에 값의 타입을 모를 때도 안전하게 처리할 수 있어요.
Since: 1.6.