-
@Documented @Retention(RUNTIME) @Target(ANNOTATION_TYPE) public @interface Target
注釈型が適用可能なコンテキストを示します。 注釈型を適用できる可能性のある宣言コンテキストおよび型コンテキストは、JLS 9.6.4.1に明記されており、java.lang.annotation.ElementType
の列挙型定数によってソース・コード内に示されます。@Target
メタ注釈が注釈型T
に存在しない場合は、型T
の注釈を、型パラメータ宣言を除く任意の宣言の修飾子として記述できます。@Target
メタ注釈が存在する場合、コンパイラは、JLS 9.7.4に基づいてElementType
の列挙型定数で指定された使用制限を強制します。たとえば、この
@Target
メタ注釈は、宣言された型自体がメタ注釈型であることを示します。 これは注釈型宣言でのみ使用可能です。@Target(ElementType.ANNOTATION_TYPE) public @interface MetaAnnotationType { ... }
この
@Target
メタ注釈は、宣言された型の使用目的が複雑な注釈型宣言のメンバー型だけであることを示します。 これは直接的な注釈には使用できません。@Target({}) public @interface MemberType { ... }
1つの
ElementType
定数が@Target
注釈内に複数回表示されるとコンパイル時エラーになります。 たとえば、次の@Target
メタ注釈は不正です。@Target({ElementType.FIELD, ElementType.METHOD, ElementType.FIELD}) public @interface Bogus { ... }
- 導入されたバージョン:
- 1.5
- Java™言語仕様を参照します:
- 9.6.4.1 @Target、9.7.4注釈が表示される場所、9.7.5同じタイプの複数注釈
-
-
必須要素のサマリー
必須要素 修飾子と型 必須要素 説明 ElementType[]
value
注釈型を適用できる要素の種類の配列を返します。
-
-
-
要素の詳細
-
value
ElementType[] value
注釈型を適用できる要素の種類の配列を返します。- 戻り値:
- 注釈型を適用できる要素の種類の配列
-
-