根据类去中的属性名去拿属性值

 Field提供如下几种方法:

 

:1:Class.getDeclaredField(String name);

返回一个 Field 对象,该对象反映此 Class 对象所表示的类或接口的指定已声明字段(包括私有成员)。

2:Class.getDeclaredFields();

 返回 Field 对象的一个数组,该数组包含此 Class 对象所表示的类或接口所声明的所有字段(包括私有成员)。

3:Class.getField(String name);

返回一个 Field 对象,它反映此 Class 对象所表示的类或接口的指定公共成员字段。

4:Class.getFields();

返回一个包含某些 Field 对象的数组,该数组包含此 Class 对象所表示的类或接口的所有可访问公共字段。

package com.mao.test;

public class hco
{
public String name;
private Integer age;
private String sex;
//省略所有属性的set、get方法

 

 

 

Field f1=hco.getClass().getDeclaredField("name");
//设置对象的访问权限,保证对private的属性的访问
f1.setAccessible(true);
System.out.println(f1.get(hco));

//设置值

f1.set(hco, "Maoge");

 

posted @ 2018-08-02 11:30  xiaowejie  阅读(316)  评论(0)    收藏  举报