Java8にgetDeclaredFieldsメソッドでメンバー変数を取得する

2022年1月12日

環境
Eclipse 2019
Java8

関数
public Field getDeclaredField(String name) throws NoSuchFieldException,SecurityException
このClassオブジェクトが表すクラスまたはインタフェースの、指定された宣言されたフィールドをリフレクトするFieldオブジェクトを返します。nameパラメータは、要求されるフィールドに単純名を指定するStringです。
パラメータ:
name – フィールドの名前
戻り値:
このクラスに指定されたフィールドのFieldオブジェクト

使用例

package com.arkgame.bat;

import java.lang.reflect.Field;

public class FieldsDemo {

      public static void main(String[] args) {

            Class<User> cu = User.class;
            // クラスのメンバー変数を取得します
            Field[] fd = cu.getDeclaredFields();
            //for文で取得した体を表示
            for (Field t : fd) {
                  System.out.println(t);
            }
      }

}
//クラスUserの定義
class User {
      private String username = "yamada";
      private int age = 23;
      private double[] item = {1.21,2.31,3.45};
}

実行結果

private java.lang.String com.arkgame.bat.User.username
private int com.arkgame.bat.User.age
private double[] com.arkgame.bat.User.item

 

Java

Posted by arkgame