网站建设中的Class对象
想要知道Java的RTTI是如何工作的,你就必须首先知道程序运行的时候,类型信息是怎样表示的。这是由一种特殊的,保存类的信息的,叫做“class对象”的对象来完成的。实际上类的常规对象是由class对象创建的。程序里的每个类都要有一个class对象。也就是说,每次你撰写并且编译了一个新的类的时候,你就创建了一个新的class对象(而且可以这么说,这个对象会存储在同名的.class文件里)。
程序运行时,当你需要创建一个那种类的对象的时候,JVM会检查它是否装载了那个class对象。如果没有,JVM就会去找那个.class文件,然后装载。由此也可知道,Java程序在启动的时候并没有完全装载,这点同许多传统语言是不一样的。
一旦那种类型的class对象被装进了内存,所有那个类的对象就都会由它来创建了。Class对象同其它对象一样,也可以用reference来操控(这是装载器要干的),而要想获取其reference,forName()就是一个方法。它要一个表示这个类的名字的string做参数。这个方法会返回class的reference,不过程序里面没用到这个reference。这里只是要用它的副作用——看看Gum类装载了没有,要是还没有那就马上装载。装载的过程中,程序执行了Gum的static语句。
本文出自 老域名查询 ,转载时请注明出处及相应链接。
本文永久链接: http://www.sc8323.com/2014/655.html