モジュール java.base
パッケージ java.lang.reflect

クラスField

  • すべての実装されたインタフェース:
    AnnotatedElement, Member

    public final class Field
    extends AccessibleObject
    implements Member
    Fieldは、クラスまたはインタフェースについての情報、それらへの動的なアクセス、その単一フィールドを提供します。 リフレクトされたフィールドが、クラス(static)フィールドまたはインスタンス・フィールドであることもあります。

    Fieldは、アクセス操作の取得または設定中に拡大変換が発生することを許可しますが、縮小変換が発生するとIllegalArgumentExceptionをスローします。

    導入されたバージョン:
    1.1
    関連項目:
    Member, Class, Class.getFields(), Class.getField(String), Class.getDeclaredFields(), Class.getDeclaredField(String)
    • フィールドのサマリー

    • メソッドのサマリー

      修飾子と型 メソッド 説明
      boolean equals​(Object obj)
      このFieldを指定されたオブジェクトと比較します。
      Object get​(Object obj)
      指定されたオブジェクトについて、このFieldによって表されるフィールドの値を返します。
      AnnotatedType getAnnotatedType()
      このFieldによって表されるフィールドの宣言型を指定する型の使用を表すAnnotatedTypeオブジェクトを返します。
      <T extends Annotation>
      T
      getAnnotation​(クラス<T> annotationClass)
      存在する場合は、この要素の指定された型の注釈を返し、そうでない場合はnullを返します。
      <T extends Annotation>
      T[]
      getAnnotationsByType​(クラス<T> annotationClass)
      この要素に関連付けられている注釈を返します。
      boolean getBoolean​(Object obj)
      staticまたはインスタンスbooleanフィールドの値を取得します。
      byte getByte​(Object obj)
      staticまたはインスタンスbyteフィールドの値を取得します。
      char getChar​(Object obj)
      char型、または拡大変換によってchar型に変換可能な別のプリミティブ型のstaticまたはインスタンス・フィールドの値を取得します。
      Class<?> getDeclaringClass()
      Fieldオブジェクトによって表されるフィールドを宣言するクラスまたはインタフェースを表すClassオブジェクトを返します。
      double getDouble​(Object obj)
      double型、または拡大変換によってdouble型に変換可能な別のプリミティブ型のstaticまたはインスタンス・フィールドの値を取得します。
      float getFloat​(Object obj)
      float型、または拡大変換によってfloat型に変換可能な別のプリミティブ型のstaticまたはインスタンス・フィールドの値を取得します。
      Type getGenericType()
      Fieldオブジェクトで表されるフィールドの宣言タイプを表すTypeオブジェクトを返します。
      int getInt​(Object obj)
      int型、または拡大変換によってint型に変換可能な別のプリミティブ型のstaticまたはインスタンス・フィールドの値を取得します。
      long getLong​(Object obj)
      long型、または拡大変換によってlong型に変換可能な別のプリミティブ型のstaticまたはインスタンス・フィールドの値を取得します。
      int getModifiers()
      Fieldオブジェクトによって表されるフィールドのJava言語修飾子を整数として返します。
      String getName()
      Fieldオブジェクトによって表されるフィールドの名前を返します。
      short getShort​(Object obj)
      short型、または拡大変換によってshort型に変換可能な別のプリミティブ型のstaticまたはインスタンス・フィールドの値を取得します。
      Class<?> getType()
      Fieldオブジェクトで表されるフィールドの宣言タイプを識別するClassオブジェクトを返します。
      int hashCode()
      このFieldのハッシュ・コードを返します。
      boolean isEnumConstant()
      このフィールドが列挙型の要素を表す場合はtrueを返し、そうでない場合はfalseを返します。
      boolean isSynthetic()
      このフィールドが合成フィールドである場合はtrueを返し、そうでない場合はfalseを返します。
      void set​(Object obj, Object value)
      このFieldオブジェクトによって表される指定されたオブジェクト引数のフィールドを、指定された新しい値に設定します。
      void setAccessible​(boolean flag)
      このリフレクトされたオブジェクトのaccessibleフラグを、指定されたブール値に設定します。
      void setBoolean​(Object obj, boolean z)
      指定されたオブジェクトについて、フィールドの値をbooleanとして設定します。
      void setByte​(Object obj, byte b)
      指定されたオブジェクトについて、フィールドの値をbyteとして設定します。
      void setChar​(Object obj, char c)
      指定されたオブジェクトについて、フィールドの値をcharとして設定します。
      void setDouble​(Object obj, double d)
      指定されたオブジェクトについて、フィールドの値をdoubleとして設定します。
      void setFloat​(Object obj, float f)
      指定されたオブジェクトについて、フィールドの値をfloatとして設定します。
      void setInt​(Object obj, int i)
      指定されたオブジェクトについて、フィールドの値をintとして設定します。
      void setLong​(Object obj, long l)
      指定されたオブジェクトについて、フィールドの値をlongとして設定します。
      void setShort​(Object obj, short s)
      指定されたオブジェクトについて、フィールドの値をshortとして設定します。
      String toGenericString()
      ジェネリック型を含む、このFieldを記述する文字列を返します。
      String toString()
      このFieldを記述する文字列を返します。
    • メソッドの詳細

      • setAccessible

        public void setAccessible​(boolean flag)
        クラスからコピーされた説明:AccessibleObject
        このリフレクトされたオブジェクトのaccessibleフラグを、指定されたブール値に設定します。 trueの値は、リフレクトされたオブジェクトが使用されたときに、Java言語のアクセス制御のチェックを抑制すべきであることを示します。 falseの値は、リフレクトされたオブジェクトが、使用時にJava言語のアクセス制御をチェックし、クラスの説明に記載されているバリエーションを適用する必要があることを示します。

        このメソッドは、Cクラスの呼び出し側がdeclaring class Dmemberへのアクセスを可能にするために使用されます:

        • CDは同じモジュールにあります。
        • メンバーはpublicであり、Dはパッケージ内のpublicであり、D exportsを含むモジュールは少なくともCを含むモジュールに含まれます。
        • メンバーはprotected staticDはパッケージ内のpublicであり、Dを含むモジュールは少なくともCを含むモジュールにエクスポートし、CDのサブクラスです。
        • Dは、少なくともCを含むモジュールにD opensを含むモジュールがパッケージされています。 名前のないモジュールと開いているモジュールのすべてのパッケージはすべてのモジュールに対してオープンであるため、このメソッドは、Dが名前のないモジュールまたは開いているモジュールにあるときには常に成功します。

        このメソッドは、宣言クラスが呼び出し元とは異なるモジュールにあり、宣言クラスを含むパッケージが呼び出し元に対して開かれていない場合に、privateメンバー、デフォルト(package)アクセスを持つメンバー、保護されたインスタンス・メンバー、または保護されたコンストラクタ・モジュール。

        セキュリティ・マネージャがある場合、そのcheckPermissionメソッドは最初にReflectPermission("suppressAccessChecks")パーミッションで呼び出されます。

        オーバーライド:
        クラスAccessibleObjectsetAccessible
        パラメータ:
        flag - accessibleフラグの新しい値
        例外:
        InaccessibleObjectException - アクセスを有効にできない場合
        SecurityException - リクエストがセキュリティ・マネージャによって拒否された場合
        関連項目:
        AccessibleObject.trySetAccessible(), MethodHandles.privateLookupIn(java.lang.Class<?>, java.lang.invoke.MethodHandles.Lookup)
      • getDeclaringClass

        public Class<?> getDeclaringClass()
        Fieldオブジェクトによって表されるフィールドを宣言するクラスまたはインタフェースを表すClassオブジェクトを返します。
        定義:
        getDeclaringClass、インタフェース: Member
        戻り値:
        基本となるメンバーの宣言クラスを表すオブジェクト
      • getName

        public String getName()
        Fieldオブジェクトによって表されるフィールドの名前を返します。
        定義:
        getName、インタフェース: Member
        戻り値:
        基本となるメンバーの単純名
      • getModifiers

        public int getModifiers()
        Fieldオブジェクトによって表されるフィールドのJava言語修飾子を整数として返します。 修飾子の復号化には、Modifierクラスを使用する必要があります。
        定義:
        getModifiers、インタフェース: Member
        戻り値:
        基本となるメンバーのJava言語修飾子
        関連項目:
        Modifier
      • isEnumConstant

        public boolean isEnumConstant()
        このフィールドが列挙型の要素を表す場合はtrueを返し、そうでない場合はfalseを返します。
        戻り値:
        このフィールドが列挙型の要素を表す場合に限り、true
        導入されたバージョン:
        1.5
      • isSynthetic

        public boolean isSynthetic()
        このフィールドが合成フィールドである場合はtrueを返し、そうでない場合はfalseを返します。
        定義:
        isSynthetic、インタフェース: Member
        戻り値:
        このフィールドが、『Java言語仕様』で定義されている合成フィールドである場合に限り、true
        導入されたバージョン:
        1.5
      • getType

        public Class<?> getType()
        Fieldオブジェクトで表されるフィールドの宣言タイプを識別するClassオブジェクトを返します。
        戻り値:
        このオブジェクトが表すフィールドの宣言型を識別するClassオブジェクト
      • getGenericType

        public Type getGenericType()
        Fieldオブジェクトで表されるフィールドの宣言タイプを表すTypeオブジェクトを返します。

        Typeがパラメータ化された型の場合、返されるTypeオブジェクトは、ソース・コードで使用される実際の型パラメータを反映しなければいけません。

        基本となるフィールドの型が、型変数またはパラメータ化された型の場合、仮パラメータ型は作成されます。 そうでない場合、例外タイプは解決されます。

        戻り値:
        このFieldオブジェクトで表されるフィールドの宣言タイプを表すTypeオブジェクト
        例外:
        GenericSignatureFormatError - このジェネリック・フィールドのシグネチャが『Java™仮想マシン仕様』で規定される書式に適合しない場合
        TypeNotPresentException - 基本となるフィールドのジェネリック型のシグネチャが、存在しない型宣言を参照する場合
        MalformedParameterizedTypeException - 基本となるフィールドのジェネリック・シグネチャが、なんらかの理由によりインスタンス化できないパラメータ化された型を参照する場合
        導入されたバージョン:
        1.5
      • equals

        public boolean equals​(Object obj)
        このFieldを指定されたオブジェクトと比較します。 オブジェクトが同じ場合にはtrueを返します。 2つのFieldオブジェクトは、同じクラスで宣言され、同じ名前と型を持つ場合に等しいとみなされます。
        オーバーライド:
        equals 、クラス:  Object
        パラメータ:
        obj - 比較対象の参照オブジェクト。
        戻り値:
        このオブジェクトがobj引数と同じである場合はtrue、それ以外の場合はfalse
        関連項目:
        Object.hashCode()HashMap
      • hashCode

        public int hashCode()
        このFieldのハッシュ・コードを返します。 これは、基本となるフィールドの宣言クラス名とその名前のハッシュ・コードの排他的論理和として計算されます。
        オーバーライド:
        hashCode 、クラス:  Object
        戻り値:
        このオブジェクトのハッシュ・コード値。
        関連項目:
        Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)
      • toString

        public String toString()
        このFieldを記述する文字列を返します。 この文字列の書式は、存在する場合はフィールドのアクセス修飾子、フィールド型、スペース、フィールドを宣言するクラスの完全指定名、ピリオド、フィールド名が順番に続きます。 たとえば、
            public static final int java.lang.Thread.MIN_PRIORITY
            private int java.io.FileDescriptor.fd
         

        修飾子は、『Java言語仕様』で規定された正規の順序で格納されます。 これは、publicprotected、またはprivateがまず配置され、次にほかの修飾子が次の順序で続きます: staticfinaltransientvolatile

        オーバーライド:
        toString 、クラス:  Object
        戻り値:
        このFieldを記述する文字列
        Java™言語仕様:
        8.3.1 「フィールド修飾子」
      • toGenericString

        public String toGenericString()
        ジェネリック型を含む、このFieldを記述する文字列を返します。 この文字列の書式は、(存在する場合には)フィールドのアクセス修飾子、ジェネリック・フィールド型、空白、フィールドを宣言するクラスの完全指定名、ピリオド、フィールド名が順番に続きます。

        修飾子は、『Java言語仕様』で規定された正規の順序で格納されます。 これは、publicprotected、またはprivateがまず配置され、次にほかの修飾子が次の順序で続きます: staticfinaltransientvolatile

        戻り値:
        ジェネリック型を含む、このFieldを記述する文字列
        導入されたバージョン:
        1.5
        Java™言語仕様:
        8.3.1 「フィールド修飾子」
      • get

        public Object get​(Object obj)
                   throws IllegalArgumentException,
                          IllegalAccessException
        指定されたオブジェクトについて、このFieldによって表されるフィールドの値を返します。 プリミティブ型の場合、オブジェクト内に自動的に格納されてから返されます。

        基本となるフィールドの値は、次に示すように取得されます。

        基本となるフィールドがstaticフィールドである場合、obj引数は無視されます。オブジェクト引数がnullである場合があります。

        そうでない場合、基本となるフィールドはインスタンス・フィールドです。 指定されたobj引数がnullの場合、メソッドはNullPointerExceptionをスローします。 指定されたオブジェクトが基本となるフィールドを宣言するクラスまたはインタフェースのインスタンスではない場合、メソッドはIllegalArgumentExceptionをスローします。

        このFieldオブジェクトがJava言語アクセス制御を実施しており、基本となるフィールドにアクセスできない場合、メソッドはIllegalAccessExceptionをスローします。 基本となるフィールドがstaticの場合、フィールドを宣言したクラスがまだ初期化されていないときは、このクラスが初期化されます。

        それ以外の場合、値は基本となるインスタンスまたはstaticフィールドから取得されます。 フィールドにプリミティブ型が指定されている場合、値は返される前にオブジェクト内でラップされます。

        フィールドがobjの型に隠されている場合、フィールドの値は前述のルールに従って取得されます。

        パラメータ:
        obj - 表現されるフィールド値の抽出元オブジェクト
        戻り値:
        オブジェクトobj内で表現されるフィールドの値。プリミティブ値は適切なオブジェクト内にラップされてから返される
        例外:
        IllegalAccessException - このFieldオブジェクトがJava言語アクセス制御を実施しており、基本となるフィールドにアクセスできない場合。
        IllegalArgumentException - 指定されたオブジェクトが基本となるフィールド(またはそのサブクラスか実装側)を宣言するクラスまたはインタフェースのインスタンスではない場合。
        NullPointerException - 指定されたオブジェクトがnullで、フィールドがインスタンス・フィールドの場合。
        ExceptionInInitializerError - このメソッドによる初期化に失敗した場合。
      • getBoolean

        public boolean getBoolean​(Object obj)
                           throws IllegalArgumentException,
                                  IllegalAccessException
        staticまたはインスタンスbooleanフィールドの値を取得します。
        パラメータ:
        obj - boolean値の抽出元のオブジェクト
        戻り値:
        booleanフィールドの値
        例外:
        IllegalAccessException - このFieldオブジェクトがJava言語アクセス制御を実施しており、基本となるフィールドにアクセスできない場合。
        IllegalArgumentException - 指定されたオブジェクトが基本となるフィールド(またはそのサブクラスか実装側)を宣言するクラスまたはインタフェースのインスタンスではない場合、あるいはフィールドの値が拡大変換によってboolean型に変換できない場合。
        NullPointerException - 指定されたオブジェクトがnullで、フィールドがインスタンス・フィールドの場合。
        ExceptionInInitializerError - このメソッドによる初期化に失敗した場合。
        関連項目:
        get(java.lang.Object)
      • getByte

        public byte getByte​(Object obj)
                     throws IllegalArgumentException,
                            IllegalAccessException
        staticまたはインスタンスbyteフィールドの値を取得します。
        パラメータ:
        obj - byte値の抽出元のオブジェクト
        戻り値:
        byteフィールドの値
        例外:
        IllegalAccessException - このFieldオブジェクトがJava言語アクセス制御を実施しており、基本となるフィールドにアクセスできない場合。
        IllegalArgumentException - 指定されたオブジェクトが基本となるフィールド(またはそのサブクラスか実装側)を宣言するクラスまたはインタフェースのインスタンスではない場合、あるいはフィールドの値が拡大変換によってbyte型に変換できない場合。
        NullPointerException - 指定されたオブジェクトがnullで、フィールドがインスタンス・フィールドの場合。
        ExceptionInInitializerError - このメソッドによる初期化に失敗した場合。
        関連項目:
        get(java.lang.Object)
      • getChar

        public char getChar​(Object obj)
                     throws IllegalArgumentException,
                            IllegalAccessException
        char型、または拡大変換によってchar型に変換可能な別のプリミティブ型のstaticまたはインスタンス・フィールドの値を取得します。
        パラメータ:
        obj - char値の抽出元のオブジェクト
        戻り値:
        char型に変換されたフィールドの値
        例外:
        IllegalAccessException - このFieldオブジェクトがJava言語アクセス制御を実施しており、基本となるフィールドにアクセスできない場合。
        IllegalArgumentException - 指定されたオブジェクトが基本となるフィールド(またはそのサブクラスか実装側)を宣言するクラスまたはインタフェースのインスタンスではない場合、あるいはフィールドの値が拡大変換によってchar型に変換できない場合。
        NullPointerException - 指定されたオブジェクトがnullで、フィールドがインスタンス・フィールドの場合。
        ExceptionInInitializerError - このメソッドによる初期化に失敗した場合。
        関連項目:
        get(java.lang.Object)
      • getShort

        public short getShort​(Object obj)
                       throws IllegalArgumentException,
                              IllegalAccessException
        short型、または拡大変換によってshort型に変換可能な別のプリミティブ型のstaticまたはインスタンス・フィールドの値を取得します。
        パラメータ:
        obj - short値の抽出元のオブジェクト
        戻り値:
        short型に変換されたフィールドの値
        例外:
        IllegalAccessException - このFieldオブジェクトがJava言語アクセス制御を実施しており、基本となるフィールドにアクセスできない場合。
        IllegalArgumentException - 指定されたオブジェクトが基本となるフィールド(またはそのサブクラスか実装側)を宣言するクラスまたはインタフェースのインスタンスではない場合、あるいはフィールドの値が拡大変換によってshort型に変換できない場合。
        NullPointerException - 指定されたオブジェクトがnullで、フィールドがインスタンス・フィールドの場合。
        ExceptionInInitializerError - このメソッドによる初期化に失敗した場合。
        関連項目:
        get(java.lang.Object)
      • getInt

        public int getInt​(Object obj)
                   throws IllegalArgumentException,
                          IllegalAccessException
        int型、または拡大変換によってint型に変換可能な別のプリミティブ型のstaticまたはインスタンス・フィールドの値を取得します。
        パラメータ:
        obj - int値の抽出元のオブジェクト
        戻り値:
        int型に変換されたフィールドの値
        例外:
        IllegalAccessException - このFieldオブジェクトがJava言語アクセス制御を実施しており、基本となるフィールドにアクセスできない場合。
        IllegalArgumentException - 指定されたオブジェクトが基本となるフィールド(またはそのサブクラスか実装側)を宣言するクラスまたはインタフェースのインスタンスではない場合、あるいはフィールドの値が拡大変換によってint型に変換できない場合。
        NullPointerException - 指定されたオブジェクトがnullで、フィールドがインスタンス・フィールドの場合。
        ExceptionInInitializerError - このメソッドによる初期化に失敗した場合。
        関連項目:
        get(java.lang.Object)
      • getLong

        public long getLong​(Object obj)
                     throws IllegalArgumentException,
                            IllegalAccessException
        long型、または拡大変換によってlong型に変換可能な別のプリミティブ型のstaticまたはインスタンス・フィールドの値を取得します。
        パラメータ:
        obj - long値の抽出元のオブジェクト
        戻り値:
        long型に変換されたフィールドの値
        例外:
        IllegalAccessException - このFieldオブジェクトがJava言語アクセス制御を実施しており、基本となるフィールドにアクセスできない場合。
        IllegalArgumentException - 指定されたオブジェクトが基本となるフィールド(またはそのサブクラスか実装側)を宣言するクラスまたはインタフェースのインスタンスではない場合、あるいはフィールドの値が拡大変換によってlong型に変換できない場合。
        NullPointerException - 指定されたオブジェクトがnullで、フィールドがインスタンス・フィールドの場合。
        ExceptionInInitializerError - このメソッドによる初期化に失敗した場合。
        関連項目:
        get(java.lang.Object)
      • getFloat

        public float getFloat​(Object obj)
                       throws IllegalArgumentException,
                              IllegalAccessException
        float型、または拡大変換によってfloat型に変換可能な別のプリミティブ型のstaticまたはインスタンス・フィールドの値を取得します。
        パラメータ:
        obj - float値の抽出元のオブジェクト
        戻り値:
        float型に変換されたフィールドの値
        例外:
        IllegalAccessException - このFieldオブジェクトがJava言語アクセス制御を実施しており、基本となるフィールドにアクセスできない場合。
        IllegalArgumentException - 指定されたオブジェクトが基本となるフィールド(またはそのサブクラスか実装側)を宣言するクラスまたはインタフェースのインスタンスではない場合、あるいはフィールドの値が拡大変換によってfloat型に変換できない場合。
        NullPointerException - 指定されたオブジェクトがnullで、フィールドがインスタンス・フィールドの場合。
        ExceptionInInitializerError - このメソッドによる初期化に失敗した場合。
        関連項目:
        get(java.lang.Object)
      • getDouble

        public double getDouble​(Object obj)
                         throws IllegalArgumentException,
                                IllegalAccessException
        double型、または拡大変換によってdouble型に変換可能な別のプリミティブ型のstaticまたはインスタンス・フィールドの値を取得します。
        パラメータ:
        obj - double値の抽出元のオブジェクト
        戻り値:
        double型に変換されたフィールドの値
        例外:
        IllegalAccessException - このFieldオブジェクトがJava言語アクセス制御を実施しており、基本となるフィールドにアクセスできない場合。
        IllegalArgumentException - 指定されたオブジェクトが基本となるフィールド(またはそのサブクラスか実装側)を宣言するクラスまたはインタフェースのインスタンスではない場合、あるいはフィールドの値が拡大変換によってdouble型に変換できない場合。
        NullPointerException - 指定されたオブジェクトがnullで、フィールドがインスタンス・フィールドの場合。
        ExceptionInInitializerError - このメソッドによる初期化に失敗した場合。
        関連項目:
        get(java.lang.Object)
      • set

        public void set​(Object obj,
                        Object value)
                 throws IllegalArgumentException,
                        IllegalAccessException
        このFieldオブジェクトによって表される指定されたオブジェクト引数のフィールドを、指定された新しい値に設定します。 基本となるフィールドにプリミティブ型が指定されている場合、新しい値は自動的にラップ解除されます。

        動作は次のように進行します。

        基本となるフィールドがstaticである場合、obj引数は無視されます。オブジェクト引数がnullの場合があります。

        そうでない場合、基本となるフィールドはインスタンス・フィールドです。 指定されたオブジェクト引数がnullの場合、メソッドはNullPointerExceptionをスローします。 指定されたオブジェクト引数が基本となるフィールドを宣言するクラスまたはインタフェースのインスタンスではない場合、メソッドはIllegalArgumentExceptionをスローします。

        このFieldオブジェクトがJava言語アクセス制御を実施しており、基本となるフィールドにアクセスできない場合、メソッドはIllegalAccessExceptionをスローします。

        基本となるフィールドがfinalである場合、setAccessible(true)がこのFieldオブジェクトについて有効で、このフィールドがstaticでないときを除き、メソッドはIllegalAccessExceptionをスローします。 この方法でfinalフィールドを設定することが有用なのは、プログラムのほかの部分からアクセスできるようにする前に空白のfinalフィールドを持つクラスのインスタンスを直列化復元や再構築を行うときだけです。 ほかのコンテキストで使用すると、プログラムのほかの部分がこのフィールドの元の値を使用し続けるなどの予測できない影響が発生する可能性があります。

        基本となるフィールドがプリミティブ型である場合、ラップ解除変換が試行され、新しい値をプリミティブ型の値に変換します。 この試行が正常に終了しない場合、メソッドはIllegalArgumentExceptionをスローします。

        ラップ解除が行われたあとに、新しい値を恒等変換または拡大変換で基本となるフィールドの型に変換できない場合、メソッドはIllegalArgumentExceptionをスローします。

        基本となるフィールドがstaticの場合、フィールドを宣言したクラスがまだ初期化されていないときは、このクラスが初期化されます。

        フィールドは、ラップ解除され拡大された新しい値に設定されます。

        フィールドがobjの型に隠されている場合、フィールドの値は前述のルールに従って設定されます。

        パラメータ:
        obj - フィールドを変更するオブジェクト
        value - 変更中のobjの新しいフィールド値
        例外:
        IllegalAccessException - このFieldオブジェクトがJava言語アクセス制御を実施しており、基本となるフィールドが、アクセス不可能であるかfinalである場合。
        IllegalArgumentException - 指定されたオブジェクトが基本となるフィールド(またはそのサブクラスか実装側)を宣言するクラスまたはインタフェースのインスタンスではない場合、あるいはラップ解除変換が失敗した場合。
        NullPointerException - 指定されたオブジェクトがnullで、フィールドがインスタンス・フィールドの場合。
        ExceptionInInitializerError - このメソッドによる初期化に失敗した場合。
      • setBoolean

        public void setBoolean​(Object obj,
                               boolean z)
                        throws IllegalArgumentException,
                               IllegalAccessException
        指定されたオブジェクトについて、フィールドの値をbooleanとして設定します。 このメソッドはset(obj, zObj)と同等です(zObjBooleanオブジェクトであり、zObj.booleanValue()== z)。
        パラメータ:
        obj - フィールドを変更するオブジェクト
        z - 変更中のobjの新しいフィールド値
        例外:
        IllegalAccessException - このFieldオブジェクトがJava言語アクセス制御を実施しており、基本となるフィールドが、アクセス不可能であるかfinalである場合。
        IllegalArgumentException - 指定されたオブジェクトが基本となるフィールド(またはそのサブクラスか実装側)を宣言するクラスまたはインタフェースのインスタンスではない場合、あるいはラップ解除変換が失敗した場合。
        NullPointerException - 指定されたオブジェクトがnullで、フィールドがインスタンス・フィールドの場合。
        ExceptionInInitializerError - このメソッドによる初期化に失敗した場合。
        関連項目:
        set(java.lang.Object, java.lang.Object)
      • setByte

        public void setByte​(Object obj,
                            byte b)
                     throws IllegalArgumentException,
                            IllegalAccessException
        指定されたオブジェクトについて、フィールドの値をbyteとして設定します。 このメソッドはset(obj, bObj)と同等です(bObjByteオブジェクトであり、bObj.byteValue()== b)。
        パラメータ:
        obj - フィールドを変更するオブジェクト
        b - 変更中のobjの新しいフィールド値
        例外:
        IllegalAccessException - このFieldオブジェクトがJava言語アクセス制御を実施しており、基本となるフィールドが、アクセス不可能であるかfinalである場合。
        IllegalArgumentException - 指定されたオブジェクトが基本となるフィールド(またはそのサブクラスか実装側)を宣言するクラスまたはインタフェースのインスタンスではない場合、あるいはラップ解除変換が失敗した場合。
        NullPointerException - 指定されたオブジェクトがnullで、フィールドがインスタンス・フィールドの場合。
        ExceptionInInitializerError - このメソッドによる初期化に失敗した場合。
        関連項目:
        set(java.lang.Object, java.lang.Object)
      • setChar

        public void setChar​(Object obj,
                            char c)
                     throws IllegalArgumentException,
                            IllegalAccessException
        指定されたオブジェクトについて、フィールドの値をcharとして設定します。 このメソッドはset(obj, cObj)と同等です(cObjCharacterオブジェクトであり、cObj.charValue()== c)。
        パラメータ:
        obj - フィールドを変更するオブジェクト
        c - 変更中のobjの新しいフィールド値
        例外:
        IllegalAccessException - このFieldオブジェクトがJava言語アクセス制御を実施しており、基本となるフィールドが、アクセス不可能であるかfinalである場合。
        IllegalArgumentException - 指定されたオブジェクトが基本となるフィールド(またはそのサブクラスか実装側)を宣言するクラスまたはインタフェースのインスタンスではない場合、あるいはラップ解除変換が失敗した場合。
        NullPointerException - 指定されたオブジェクトがnullで、フィールドがインスタンス・フィールドの場合。
        ExceptionInInitializerError - このメソッドによる初期化に失敗した場合。
        関連項目:
        set(java.lang.Object, java.lang.Object)
      • setShort

        public void setShort​(Object obj,
                             short s)
                      throws IllegalArgumentException,
                             IllegalAccessException
        指定されたオブジェクトについて、フィールドの値をshortとして設定します。 このメソッドはset(obj, sObj)と同等です(sObjShortオブジェクトであり、sObj.shortValue()== s)。
        パラメータ:
        obj - フィールドを変更するオブジェクト
        s - 変更中のobjの新しいフィールド値
        例外:
        IllegalAccessException - このFieldオブジェクトがJava言語アクセス制御を実施しており、基本となるフィールドが、アクセス不可能であるかfinalである場合。
        IllegalArgumentException - 指定されたオブジェクトが基本となるフィールド(またはそのサブクラスか実装側)を宣言するクラスまたはインタフェースのインスタンスではない場合、あるいはラップ解除変換が失敗した場合。
        NullPointerException - 指定されたオブジェクトがnullで、フィールドがインスタンス・フィールドの場合。
        ExceptionInInitializerError - このメソッドによる初期化に失敗した場合。
        関連項目:
        set(java.lang.Object, java.lang.Object)
      • setInt

        public void setInt​(Object obj,
                           int i)
                    throws IllegalArgumentException,
                           IllegalAccessException
        指定されたオブジェクトについて、フィールドの値をintとして設定します。 このメソッドはset(obj, iObj)と等価です。ここで、iObjIntegerオブジェクトであり、iObj.intValue() == iオブジェクトです。
        パラメータ:
        obj - フィールドを変更するオブジェクト
        i - 変更中のobjの新しいフィールド値
        例外:
        IllegalAccessException - このFieldオブジェクトがJava言語アクセス制御を実施しており、基本となるフィールドが、アクセス不可能であるかfinalである場合。
        IllegalArgumentException - 指定されたオブジェクトが基本となるフィールド(またはそのサブクラスか実装側)を宣言するクラスまたはインタフェースのインスタンスではない場合、あるいはラップ解除変換が失敗した場合。
        NullPointerException - 指定されたオブジェクトがnullで、フィールドがインスタンス・フィールドの場合。
        ExceptionInInitializerError - このメソッドによる初期化に失敗した場合。
        関連項目:
        set(java.lang.Object, java.lang.Object)
      • setLong

        public void setLong​(Object obj,
                            long l)
                     throws IllegalArgumentException,
                            IllegalAccessException
        指定されたオブジェクトについて、フィールドの値をlongとして設定します。 このメソッドはset(obj, lObj)と同等です(lObjLongオブジェクトであり、lObj.longValue()== l)。
        パラメータ:
        obj - フィールドを変更するオブジェクト
        l - 変更中のobjの新しいフィールド値
        例外:
        IllegalAccessException - このFieldオブジェクトがJava言語アクセス制御を実施しており、基本となるフィールドが、アクセス不可能であるかfinalである場合。
        IllegalArgumentException - 指定されたオブジェクトが基本となるフィールド(またはそのサブクラスか実装側)を宣言するクラスまたはインタフェースのインスタンスではない場合、あるいはラップ解除変換が失敗した場合。
        NullPointerException - 指定されたオブジェクトがnullで、フィールドがインスタンス・フィールドの場合。
        ExceptionInInitializerError - このメソッドによる初期化に失敗した場合。
        関連項目:
        set(java.lang.Object, java.lang.Object)
      • setFloat

        public void setFloat​(Object obj,
                             float f)
                      throws IllegalArgumentException,
                             IllegalAccessException
        指定されたオブジェクトについて、フィールドの値をfloatとして設定します。 このメソッドはset(obj, fObj)と同等です(fObjFloatオブジェクトであり、fObj.floatValue()== f)。
        パラメータ:
        obj - フィールドを変更するオブジェクト
        f - 変更中のobjの新しいフィールド値
        例外:
        IllegalAccessException - このFieldオブジェクトがJava言語アクセス制御を実施しており、基本となるフィールドが、アクセス不可能であるかfinalである場合。
        IllegalArgumentException - 指定されたオブジェクトが基本となるフィールド(またはそのサブクラスか実装側)を宣言するクラスまたはインタフェースのインスタンスではない場合、あるいはラップ解除変換が失敗した場合。
        NullPointerException - 指定されたオブジェクトがnullで、フィールドがインスタンス・フィールドの場合。
        ExceptionInInitializerError - このメソッドによる初期化に失敗した場合。
        関連項目:
        set(java.lang.Object, java.lang.Object)
      • setDouble

        public void setDouble​(Object obj,
                              double d)
                       throws IllegalArgumentException,
                              IllegalAccessException
        指定されたオブジェクトについて、フィールドの値をdoubleとして設定します。 このメソッドはset(obj, dObj)と同等です(dObjDoubleオブジェクトであり、dObj.doubleValue()== d)。
        パラメータ:
        obj - フィールドを変更するオブジェクト
        d - 変更中のobjの新しいフィールド値
        例外:
        IllegalAccessException - このFieldオブジェクトがJava言語アクセス制御を実施しており、基本となるフィールドが、アクセス不可能であるかfinalである場合。
        IllegalArgumentException - 指定されたオブジェクトが基本となるフィールド(またはそのサブクラスか実装側)を宣言するクラスまたはインタフェースのインスタンスではない場合、あるいはラップ解除変換が失敗した場合。
        NullPointerException - 指定されたオブジェクトがnullで、フィールドがインスタンス・フィールドの場合。
        ExceptionInInitializerError - このメソッドによる初期化に失敗した場合。
        関連項目:
        set(java.lang.Object, java.lang.Object)
      • getAnnotation

        public <T extends Annotation> T getAnnotation​(Class<T> annotationClass)
        インタフェースからコピーされた説明: AnnotatedElement
        存在する場合は、この要素の指定された型の注釈を返し、そうでない場合はnullを返します。
        定義:
        getAnnotation、インタフェース: AnnotatedElement
        オーバーライド:
        getAnnotation、クラス: AccessibleObject
        型パラメータ:
        T - 照会し、存在する場合に返す注釈の型。
        パラメータ:
        annotationClass - 注釈型に対応するClassオブジェクト
        戻り値:
        存在する場合は、この要素の指定された注釈型の注釈。そうでない場合はnull
        例外:
        NullPointerException - 指定された注釈クラスがnullの場合
        導入されたバージョン:
        1.5
      • getAnnotationsByType

        public <T extends Annotation> T[] getAnnotationsByType​(Class<T> annotationClass)
        この要素に関連付けられている注釈を返します。 この要素に関連付けられている注釈がない場合、戻り値は長さ0の配列です。 このメソッドとAnnotatedElement.getAnnotation(Class)の違いは、このメソッドではその引数が繰返し可能な注釈型 (JLS 9.6)であるかどうかが検出され、繰返し可能な注釈型である場合は、コンテナ注釈を調べることで、その型の1つ以上の注釈の検索が試みられることです。 このメソッドの呼出し元は、返された配列を自由に変更することができ、これはほかの呼出し元に返された配列に影響を及ぼしません。
        定義:
        getAnnotationsByType、インタフェース: AnnotatedElement
        オーバーライド:
        getAnnotationsByType、クラス: AccessibleObject
        型パラメータ:
        T - 照会し、存在する場合に返す注釈の型。
        パラメータ:
        annotationClass - 注釈型に対応するClassオブジェクト
        戻り値:
        この要素に関連付けられている場合は、この要素の指定された注釈型のすべての注釈。そうでない場合は長さ0の配列
        例外:
        NullPointerException - 指定された注釈クラスがnullの場合
        導入されたバージョン:
        1.8
      • getAnnotatedType

        public AnnotatedType getAnnotatedType()
        このFieldによって表されるフィールドの宣言型を指定する型の使用を表すAnnotatedTypeオブジェクトを返します。
        戻り値:
        このFieldが表すフィールドの宣言型を表すオブジェクト
        導入されたバージョン:
        1.8