“加载”是“类加载”过程中的一个阶段,加载过程完成以下三件事情:
- 通过一个类的全限定名来获取定义此类的二进制字节流。
- 将这个字节流所代表的静态存储结构转化为方法区的运行时数据结构。
- 在内存中生成一个代表这个类的java.lang.Class对象,作为方法区这个类的各种数据的访问入口。
其中,“通过一个类的全限定名来获取定义此类的二进制字节流”这个动作是在虚拟机外部实现的,以便让程序自己决定如何去获取所需要的类,实现这个动作的代码模块称为“类加载器”。
比较两个类是否相等,只有在这两个类是由同一个类加载器加载的前提下才由意义。