
正文
java 反射 - 获取成员变量的值.
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
通过反射,可以获取所有声明的成员变量(包括所有的),代码如下:
package spt.test.src;public class Person {
private String name = "pri_name";
public String id;
}
运行测试:
package spt.test;import java.lang.reflect.Field;import spt.test.src.Person;class ReflectionTest {
@SuppressWarnings("unchecked")
public static void main(String[] args) throws IllegalAccessException {
Person person = new Person();
person.id = "akk";Class<Person> pClass = (Class<Person>) person.getClass();
for (Field field : pClass.getDeclaredFields()) {
try {
//set accessable.
field.setAccessible(true);
//get field name and value.
System.out.println(field.getName() + ":" + field.get(person));
} catch (IllegalArgumentException e) {
e.printStackTrace();
}
}
}
}
将在控制台上输出:
name:pri_name
id:akk







