你上面的字段fieldX 代表的是Class类中的成员属性字段,他现在和任何对象都无关系,在后面才建立连接。
public static void main(String[] agrs) throws Exception {
Class c = Person.class;
Field f = c.getDeclaredField("name");// 这个此时只是一个字段,他和任何Perspn对象都无关,在下面才和Person对象建立关系
Person r = new Person();
f.setAccessible(true);
f.set(r, "张三");//字段和Person对象建立关系
System.out.println(f.get(r));//这里也是建立了关系
}
希望这些对你有帮助!
|