java 通過反射訪問實體類中的字段以及字段值

通過反射獲取所有的字段:

假設有一個pojo類,User.java

public class User{
  private String userName;
  
  private String passWord;
  //get set 方法省略
  ......
}

然後我們給 user 賦值,獲取其字段和值:

     public static void main(String[] args) {
        User user = new User();
        user.setUserName("zbp");
        user.setPassWord("123");
        //下邊就是獲取字段和值得
        //Class clazz = Class.forName("User");
        Class clazz = User.class;
        //獲取所有字段
        Field[] fields = clazz.getDeclaredFields();
        for (Field field : fields) {
            field.setAccessible(true);//強制設置屬性可訪問,如果是私有域,沒有設置這個會報錯
            //field.get() 方法獲取字段的值
            System.out.println("FieldName:" + field.getName() + " value:" + field.get(user));
        }

    }



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章