一、什么是类对象
一个类在被加载的时候虚拟机就会自动的生成一个这个类的一个Class类型的“类对象”,每个类都对应着一个这样的类对象,通过这个Class类型的类对象,我们就能够使用“内省与反射”机制,访问一个类的信息,比如:对应类中的方法有哪些,成员域有哪些等等。
二、获取类对象的方法
1.类名.class
2.对象调用getClass()方法获取该对象的Class实例
Student s = new Student();
Class c = s.getClass();
3.使用Class的静态方法forName(),用类的名字获取一个Class实例
三、获得类型的信息的方法
1.getName():String:获得该类型的全称名称。
2.isArray():boolean:判断该类型是否是数组。
3.isEnum():boolean:判断该类型是否是枚举类型。
4.isInterface():boolean:判断该类型是否是接口。
5.isPrimitive():boolean:判断该类型是否是基本类型。
6.getSuperClass():Class:获得该类型的直接父类,如果该类型没有直接父类,那么返回null。
7.getInterfaces():Class[]:获得该类型实现的所有接口。
8.getComponentType():Class:如果该类型是一个数组,那么返回该数组的组件类型。