jvm为每种类管理者独一的Class对象。因此我们可以用双等号操作符来比较对象:a1.getClass()==A.class;应该返回的是true。
forName(String classname)和 forName(Stringclassname,{*}boolean initialze,*ClassLoader *loader)*方法。
该方法返回给定串名相应的Class对象。若给定一个类或接口的完整路径名,那么此方法将试图定位、装载和连接该类。若成功,返回该类对象。否则,抛出ClassNotFoundException异常。例如,下面代码段返回名为java.lang.Thread的运行Class描述器。Classt=Class.forName("java.lang.Thread");此方法是需要指定类加载器的,当用到仅有一个String参数的forName方法时,Class对象将默认调用当前类加载器作为加载器和将第二参数为true。第二个参数说明:如果是false时,调用forName方法只是在命令类加载器载入该类,而不初始化该类的静态区块,只有当该类第一次实例化时,静态区块才被调用。当为true时,则载入时就调用静态区块。
getClassLoader()
获取该