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

被折叠的 条评论
为什么被折叠?



