我在看视频讲到反射的时候,有这样的代码:
Class c = Class.forName(cn.itcast.02.Person); //获取Person的字节码文件
Field field =c.getField("name"); //获取到Person对象中的name字段对象
Constructor con = c.getConstructor(); //获取到构造方法
Object obj = c.newInstance(); //获得对象
field.set(obj,"林青霞");
我不明白这里获得对象以后,为什么不向下转型,而是直接用作对象更改字段了呢?父类中没有name这个字段呀,这样用是什么原理呢?跪求各位大神了 |