Class类型的对象可以保存一个Java类型的信息。说起来有些令人费解,还是用例子说话吧。
Object类中的getClass方法会返回一个Class类型的实例。例如,如果有
ClassTest c;
...
Class cl=c.getClass();
则cl对象就保存了ClassTest类的一些信息。最常用的Class方法是getName,它会以字符串的形式返回类的名字。例如下面的代码会显示类名字符串“ClassTest”:











Class类的静态方法forName(String)可以从一个字符串获得Class对象:


另一种获得Class对象的方法也很简单。如果T是任意的Java类型(不一定是类,也可以是像int、double之类的基本类型),那么T.class就表示相应的类对象。


另一个很有用的方法是newInstance(),它可以从一个Class对象创建出一个它所表示的类的实例。例如下面的代码会创建一个Date对象:


newInstance方法调用默认的构造器来创建对象。如果没有默认的构造器,将抛出一个异常。