2011-06-23 7 views

答えて

4

getDeclaredFields()

は、このオブジェクトが表すクラスまたはインタフェースによって宣言されたすべてのフィールドを反映するFieldオブジェクトの配列を返します。これには、パブリック、保護された、デフォルトの(パッケージ)アクセス、およびプライベートフィールドが含まれますが、は継承フィールドを除きます。返される配列の要素はソートされず、特定の順序ではありません。クラスまたはインタフェースがフィールドを宣言しない場合、またはこのClassオブジェクトがプリミティブ型、配列クラス、またはvoidを表す場合、このメソッドは長さ0の配列を返します。

getFields()

は、このオブジェクトが表すクラスまたはインタフェースのすべてのアクセス可能なpublicフィールドを反映するFieldオブジェクトを含む配列を返します。返される配列の要素はソートされず、特定の順序ではありません。クラスまたはインタフェースにアクセス可能なpublicフィールドがない場合、または配列クラス、プリミティブ型、またはvoidを表す場合は、このメソッドは長さ0の配列を返します。 具体的には、このクラスオブジェクトがクラスを表す場合、このメソッドは、このクラスおよびすべてのスーパークラスのパブリックフィールドを返します。このClassオブジェクトがインタフェースを表す場合、このメソッドはこのインタフェースおよびすべてのスーパーインタフェースのフィールドを返します。

+0

ありがとう、フォローアップの質問:http://stackoverflow.com/questions/6461161/why-am-i-getting-an-emtpy-array-of-annotations-here – OscarRyz