Javareflect-field-setboolean
提供:Dev Guides
java.lang.reflect.Field.setBoolean()メソッドの例
説明
- java.lang.reflect.Field.setBoolean(Object obj、Object value)*メソッドは、指定されたオブジェクトのフィールドの値をブール値として設定します。
宣言
以下は、* java.lang.reflect.Field.setBoolean(Object obj、boolean value)*メソッドの宣言です。
public void setBoolean(Object obj, boolean value)
throws IllegalArgumentException, IllegalAccessException
パラメーター
- obj -フィールドを変更するオブジェクト。
- 値-変更されるobjのフィールドの新しい値。
返品
このフィールドがJava言語仕様で定義されている合成フィールドである場合にのみtrue。
例外
- IllegalAccessException -このFieldオブジェクトがJava言語アクセス制御を実施しており、基礎となるフィールドにアクセスできない場合。
- IllegalArgumentException -指定されたオブジェクトが、基礎となるフィールド(またはそのサブクラスまたは実装者)を宣言するクラスまたはインターフェースのインスタンスではない場合
- NullPointerException -指定されたオブジェクトがnullで、フィールドがインスタンスフィールドである場合。
- ExceptionInInitializerError -このメソッドによって引き起こされた初期化が失敗した場合。
例
次の例は、java.lang.reflect.Field.setBoolean(Object obj、Object value)メソッドの使用方法を示しています。
package com.finddevguides;
import java.lang.reflect.Field;
public class FieldDemo {
public static void main(String[] args) throws NoSuchFieldException,
SecurityException, IllegalArgumentException, IllegalAccessException {
SampleClass sampleObject = new SampleClass();
Field field = SampleClass.class.getField("sampleField");
field.setBoolean(sampleObject, false);
System.out.println(field.getBoolean(sampleObject));
}
}
class SampleClass {
public static boolean sampleField = true;
}
上記のプログラムをコンパイルして実行すると、次の結果が生成されます-
false