当前位置: 代码迷 >> Java相关 >> Java_反照_基础
  详细解决方案

Java_反照_基础

热度:44   发布时间:2016-04-22 19:32:51.0
Java_反射_基础

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); // 暴力访问

 

  相关解决方案