一.什么是JAVA的反射机制

Java反射是Java被视为动态(或准动态)语言的一个关键性质。这个机制允许程序在运行时透过ReflectionAPIs取得任何一个已知名称的class的内部信息,包括其modifiers(诸如public,static等)、superclass(例如Object)、实现之interfaces(例如Cloneable),也包括fields和methods的所有信息,并可于运行时改变fields内容或唤起methods。
Java反射机制容许程序在运行时加载、探知、使用编译期间完全未知的classes。
换言之,Java可以加载一个运行时才得知名称的class,获得其完整结构。

注意:JAVA中,无论生成某个类的多少个对象,这些对象都会对应于同一Class对象;

二.基础要点

1.获取Class对象的方式

a)针对每一个对象实例.getCalss(),可以得到对应的Class.

b)Class.forName(String),String的写法:包名.类名.就会创建包名.类名对应的那个对象

它具有动态潜质,只要换一个包就可以了.所以真正意义的想体现动态编程只能使用这个方法.

c)对于基本类型:封装类.TYPE代表了对应的基本类型的Class对象.Integer.TYPE对应的是int的Class对象
注意:Integer.class和Integer.TYPE是不一样的;

d)类.class。