1、第13讲
【01:15】Java 程序中获得 Class 对象通常有如下三种方式:
1、使用 Class 的 forName()
2、调用某个类的 class 属性
3、调用某个对象的 getClass()
【01:33】演示(上面3中方式 分别演示)
1、【02:20】Class class1 = Class.forName("cn.hsp.reflection.Cat");
2、【03:45】Class class2 = Cat.class;
3、【05:10】
Cat cat = new Cat();
Class class3 = cat.getClass();
【06:05】上面3个Class对象都是同一个 Class对象
2、第16讲
【10:15】通过反射,获取 Cat 类的 name 属性值
1、得到 Class对象,创建实例
2、【11:33】通过 clazz1 获取 cat1 对象的属性name值
Field field = clazz1.getField(属性名);
3、【13:30】Field 类
getModifiers 得到访问修饰符,例如 public、private
【14:50】通过 field 类得到值
ZC:不能通过 Field类 得到 字段的类型吗?(在17讲的【09:22】中有讲)
String nameValue = (String)field.get(对象实例);
【21:05】使用反射访问 private 类型的 属性值
【22:50】getField 改成 getDeclaredField(字段名);
field.setAccessible(true); // 暴力访问