1、反射:一切的操作都将使用Object完成如果已经有一个类,则肯定可以通过类创建对象;那么如果现在要求通过一个对象找一个类的名称,此时就需要用到反射机制了。public final Class getClass()返回类型是一个Class类,实际上此类是Java反射的源头。所谓反射从程序的运行结果来看也很好理解,即可以通过对象反射求出类的名称:如下:正常方式:引入需要的"包.类"名称->通过new实例化->取得实例化对象反射方式:实例化对象->getClass()方法->得到完整的”包.类“名称 提示:所有类的对象实际
2、上都是Class类的实例。在java中Object类是一切类的父类,那么所有类的对象实际上也就都是java.lang.Class类的实例所以所有的对象都可以转变为java.lang.Class类型表示 Class本身表示一个类的本身,通过Class可以完整地得到一个类中的完整结构,包括此类中的方法定义和属性定义等。常用方法:1) public static Class> forName(String className) throws ClassNotFoundException传入完整的“包.类”名称实例化Cl
3、ass对象2) public Constructor[] getConstructors()throws SecurityException得到一个类中的全部构造方法3)public Field[] getDeclaredFields()throws SecurityException得到本类中单独定义的全部属性4)public Field[] getFields()throws SecurityException得到本类继承而来的全部属性5) public Method[]getMethods()throws Se
4、curityException得到一个类中 的全部方法6) public Method getMethod(String name,Class...parameter Types)throws NoSuchMethodException,SecurityException返回一个Method对象,并设置一个方法中的所有参数类型7) public Class[] getInterfaces() 得到一个类中所有实现的全部接口8) public String getName() 得到一个类完整的"包.类"名称9) p
5、ublic Package getPackage()得到一个类的包10) public Class getSuperclass()得到一个类的父类11) public Object newInstance()throws InstantiantionException,IllegalAccessException根据Class 定义的类实例化对象12) public Class>getComponentType() 返回表示数组类型的Class13) public boolean isArray() 判断此Cla