Class是java.lang包中的类,该类的实例可以帮助程序创建其他类的实例或者取得其他类的对象的内部信息。
创建对象最常用的方式就是使用new运算符和类的构造方法,实际上也可以使用Class对象得到某个类的实例,步骤如下:
(1) 使用Class的类方法得到一个和某类(参数className指定的类)相关的Class对象:
publicstaticClassforName(StringclassName)throwsClassNotFoundException
上述方法返回一个和参数className指定的类相关的Class对象,如果类在某个包中,className必须带有包名,例如:className=java.util.Date。
(2) 步骤(1)中获得的Class对象调用public Object newInstance() throws InstantiationException,IllegalAccessException方法就可以得到一个className类的对象。
注意:使用Class对象调用newInstance()实例化一个className类的对象时,className类必须有无参数的构造方法。
当一个类被加载且创建对象时,和该类相关的一个类型为Class的对象就会自动创建,任何对象调用getClass()方法都可以获取和该对象相关的一个Class对象,这个Class对象调用如下的方法可以获取对象的有关信息,比如:创建该对象的类的名字、类中的方法名称、成员变量的名称等等。
Class对象经常调用的方法如下:
返回类的名字。
返回类的全部构造方法。
返回类的全部成员变量。
返回类的全部方法。