/访问test0411.Worker类的私有属性并赋值
import test0411.Worker;
import java.lang.reflect.Field;
//访问test0411.Worker类的私有属性并赋值
public class test7 {
public static void main(String[] args) {
Worker w = new Worker();
Class<Worker> c = Worker.class;
try {
Field name = c.getDeclaredField("name"); //通过getDeclaredField()方法获取name属性的对象
name.setAccessible(true);
name.set(w,"和珅");
System.out.println(w.getName());
System.out.println(w);
} catch (NoSuchFieldException e) {
throw new RuntimeException(e);
} catch (IllegalAccessException e) {
throw new RuntimeException(e);
}
}
}
输出结果:
和珅
Worker{id=null, company='null', name='和珅', salary=null}