Java基础 反射获取成员变量

 

代码示例:

public static void main(String[] args) throws Exception {
//获取class字节码文件的对象
Class clazz = Class.forName("pojo.Student");

//获取到成员变量的对象
Field[] fields = clazz.getDeclaredFields();
for (Field field : fields) {
System.out.println(field);
}

//获取单个成员变量
Field age = clazz.getDeclaredField("age");
System.out.println(age);

//获取成员变量的名字
String age1 = age.getName();
System.out.println(age1);//打印结果:age

//获取成员变量所记录的值
age.setAccessible(true);
Student stu = new Student("张三", 23);
Integer age2 = (Integer) age.get(stu);
System.out.println(age2);

//修改对象里边成员变量记录的值
age.set(stu, 26);
System.out.println(stu);
}

posted @ 2023-10-30 20:11  1stzz1  阅读(134)  评论(0)    收藏  举报