一、反射是什么?
Reflection(反射)是被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。
二、为什么?
三、反射机制怎么用 ?
反射相关的主要API:
- java.lang.Class:代表一个类;
- java.lang.reflect.Method:代表类的方法;
- java.lang.reflect.Field:代表类的成员变量;
- java.lang.reflect.Constructor:代表类的构造方法;
- ...
反射机制提供的功能:
- 在运行时判断任意一个对象所属的类;
- 在运行时构造任意一个类的对象;
- 在运行时判断任意一个类所具有的成员变量和方法;
- 在运行时调用任意一个对象的成员变量和方法;
- 生成动态代理。
1.Class类
在Object类中定义了以下的方法,此方法将被所有子类继承;
public final Class getClass()
返回值类型为Class类,此类是java反射的源头。