反射

动态语言:在运行期间改变对象类型

java不是动态语言但具有动态属性(反射)

1、反射 , 镜子

1) 在编译器创建对象 new 完整类名 反--->通过对象 找出类名

2) 在运行期间动态的创建对象、分析对象(属性,方法)

3) jvm在创建对象时会生成与之对应的class对象,同一个类的多个对象在jvm只有一个class与之对应

2、Class

1) 可以看成类的元数据。每一个对象在创建时jvm会自动生成一个与之对应的Class

2) 获取Class对象的三种方式

a、Object中的getClass(); 对象.Class()方法

b、类.class  如Student.Class

c、最常用 Class的静态方法

  Class.forName("完整类名  ")

  

posted @ 2017-05-11 16:25  rimonzheng  阅读(101)  评论(0编辑  收藏  举报