Javaのリフレクションでオブジェクトのプロパティを取得する方法

Javaのリフレクションを使用すると、オブジェクトのプロパティを取得できます。手順は次のとおりです。

  1. import java.lang.reflect.Field;
  2. クラス情報取得
  3. Class<?> clazz = Class.forName(“クラスの完全修飾名”);
  4. getDeclaredField()
  5. getField()
  6. Field field = clazz.getDeclaredField(“プロパティ名”);
  7. field.setAccessible(true);
  8. フィールド.get()
  9. Object value = field.get(オブジェクトインスタンス);

ネイティブに完全なサンプルコードを以下に示します。

import java.lang.reflect.Field;

public class Main {
    public static void main(String[] args) throws Exception {
        // 获取Class对象
        Class<?> clazz = Class.forName("类的全限定名");

        // 获取属性对象
        Field field = clazz.getDeclaredField("属性名称");

        // 设置允许访问私有属性
        field.setAccessible(true);

        // 获取属性值
        Object value = field.get(对象实例);

        System.out.println(value);
    }
}

リフレクションでプロパティの値を取得する際には、 NoSuchFieldExceptionやIllegalAccessExceptionなどの例外の処理に注意が必要です。

bannerAds