JavaTM Platform
Standard Ed. 6

java.lang.reflect
インタフェース AnnotatedElement

既知の実装クラスの一覧:
AccessibleObject, Class, Constructor, Field, Method, Package

public interface AnnotatedElement

この VM で現在実行されているプログラムの注釈付き要素を表します。このインタフェースを使用すると、注釈をリフレクト的に呼び出すことができます。このインタフェースのメソッドにより返されたすべての注釈は、不変に保たれ、直列化可能です。呼び出し元は、配列値を持つ列挙メンバーのアクセス用メソッドにより返された配列を変更できます。 この変更は、ほかの呼び出し元に返される配列に影響を及ぼしません。

このインタフェースのメソッドにより返された注釈が、この VM でアクセスできないクラスを参照している Class の値を持つメンバーを (直接または間接に) 含む場合、関連するクラスを返すメソッドを返された注釈で呼び出してクラスを読み取ろうとすると、TypeNotPresentException がスローされます。

同様に、注釈の列挙定数が列挙型にもはや存在しない場合に、列挙値を持つメンバーを読み取ろうとすると、EnumConstantNotPresentException がスローされます。

最後に、互換性なく開発された定義を持つメンバーを読み取ろうとすると、AnnotationTypeMismatchException または IncompleteAnnotationException がスローされます。

導入されたバージョン:
1.5

メソッドの概要
<T extends Annotation>
T
getAnnotation(Class<T> annotationClass)
          指定された型の注釈が存在する場合は、指定された型の要素の注釈を返します。
 Annotation[] getAnnotations()
          この要素に存在するすべての注釈を返します (この要素に注釈がない場合は長さゼロの配列を返します)。
 Annotation[] getDeclaredAnnotations()
          この要素に直接存在するすべての注釈を返します。
 boolean isAnnotationPresent(Class<? extends Annotation> annotationClass)
          指定された型の注釈がこの要素に存在する場合は true を返し、そうでない場合は false を返します。
 

メソッドの詳細

isAnnotationPresent

boolean isAnnotationPresent(Class<? extends Annotation> annotationClass)
指定された型の注釈がこの要素に存在する場合は true を返し、そうでない場合は false を返します。このメソッドは、主にマーカー注釈への簡易アクセスを目的に設計されています。

パラメータ:
annotationClass - そうでない場合は null を返します。 注釈型に対応する Class オブジェクト
戻り値:
指定された注釈型の注釈がこの要素に存在する場合は true、そうでない場合は false
例外:
NullPointerException - 指定された注釈クラスが null の場合
導入されたバージョン:
1.5

getAnnotation

<T extends Annotation> T getAnnotation(Class<T> annotationClass)
指定された型の注釈が存在する場合は、指定された型の要素の注釈を返します。

パラメータ:
annotationClass - 注釈型に対応する Class オブジェクト
戻り値:
存在する場合は、指定された注釈型の要素の注釈。 そうでない場合は null
例外:
NullPointerException - 指定された注釈クラスが null の場合
導入されたバージョン:
1.5

getAnnotations

Annotation[] getAnnotations()
この要素に存在するすべての注釈を返します (この要素に注釈がない場合は長さゼロの配列を返します)。この変更は、ほかの呼び出し元に返された配列に影響を及ぼしません。

戻り値:
この要素に存在するすべての注釈
導入されたバージョン:
1.5

getDeclaredAnnotations

Annotation[] getDeclaredAnnotations()
この要素に直接存在するすべての注釈を返します。このインタフェースにあるほかのメソッドとは異なり、このメソッドは継承された注釈を無視します (この要素に注釈が直接存在しない場合は長さゼロの配列を返す)。このメソッドの呼び出し元は、返された配列を自由に変更できます。この変更は、ほかの呼び出し元に返された配列に影響を及ぼしません。

戻り値:
この要素に直接存在するすべての注釈
導入されたバージョン:
1.5

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。