您的位置:首页 > 编程语言 > Java开发

Java反射获取私有属性并修改

2018-08-10 23:55 309 查看
关键步骤:setAccessible(true)

1、新建一个类,并设置私有属性值

public class Student {

private String name = "kobe";

public String getName() {
return name;
}

}

2、新建测试类

import java.lang.reflect.Field;

public class TestSetAccessible {
public static void main(String[] args) throws Exception{
Student stu = new Student();
Class<?> clazz = Student.class;

// 获得指定类的属性
Field field = clazz.getDeclaredField("name");
field.setAccessible(true);
// 更改私有属性的值
field.set(stu, "bryant");
System.out.println(stu.getName());
}
}

输出结果:

bryant
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Java