一、概述
以.java为扩展名的文件经过编译会生成对应的.class文件,需要执行的时候,虚拟机首先需要从class文件中读取必要的信息,而这个过程则称为类加载。类加载是类的生命周期的一部分,也是类的初始步骤。类加载器可以完成将类加载到虚拟机的工作。加载器加载类的时候是通过该类的全限定名来获取描述此类的二进制字节流。
在加载阶段,虚拟机需要完成3件事情:
a) 通过一个类的全限定名来获取定义此类的二进制字节流;
b) 将这个字节流所代表的静态存储结构转化为方法区的运行时数据结构;
c) 在内存中生成一个代表这个类的java.lang.Class类对象,作为方法区中这个类的访问入口。
类加载器会去获取类的信息,但没有规定类的格式。具体的格式通常有一下几种:
文件格式: .class文件、.jar文件、.war文件等;

2197

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



