Class对象包含了与类有关的信息。事实上,Class对象就是用来创建类的所有的“常规”对象的。每当编写并且编译一个新类,就会产生一个Class对象(更恰当地说,是被保存在一个同名的.class文件中)。
Java程序在它开始运行之前并非完全加载所有类,所有类都是对其第一次使用时,动态地加载到JVM中的。当程序创建第一个对类的静态成员引用时,就会加载这个类。
当第一次使用java的类时,类加载器首先检查这个类Class对象是否已经加载。如果尚未加载,默认的类加载器就会根据类名查找.class文件。在这个类的字节码被加载时,它们会接受验证,以确保其没有被破坏,并且不包含不良的Java代码。
一旦某个类的Class对象被载入内存,它被用来创建这个类的所有对象。
获得Class对象的3种方法:
//第一种class.forName("com.steven.a");//第二种a bb = new a();bb.getClass();//第三种Class cc = a.class;