Javareflect-field-setfloat

提供:Dev Guides
移動先:案内検索

java.lang.reflect.Field.setFloat()メソッドの例

説明

  • java.lang.reflect.Field.setFloat(Object obj、double value)*メソッドは、指定されたオブジェクトのフィールドの値をdoubleとして設定します。

宣言

以下は、* java.lang.reflect.Field.setFloat(Object obj、double value)*メソッドの宣言です。

public void setFloat(Object obj, double value)
   throws IllegalArgumentException, IllegalAccessException

パラメーター

  • obj -フィールドを変更するオブジェクト。
  • -変更されるobjのフィールドの新しい値。

返品

このフィールドがJava言語仕様で定義されている合成フィールドである場合にのみtrue。

例外

  • IllegalAccessException -このFieldオブジェクトがJava言語アクセス制御を実施しており、基礎となるフィールドにアクセスできない場合。
  • IllegalArgumentException -指定されたオブジェクトが、基礎となるフィールド(またはそのサブクラスまたは実装者)を宣言するクラスまたはインターフェースのインスタンスではない場合
  • NullPointerException -指定されたオブジェクトがnullで、フィールドがインスタンスフィールドである場合。
  • ExceptionInInitializerError -このメソッドによって引き起こされた初期化が失敗した場合。

次の例は、java.lang.reflect.Field.setFloat(Object obj、double 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.setFloat(sampleObject, 7.0f);

      System.out.println(field.getFloat(sampleObject));
   }
}

class SampleClass {
   public static float sampleField = 5.0f;
}

上記のプログラムをコンパイルして実行すると、次の結果が生成されます-

7.0