1. 什么是类加载过程
类加载过程就是将字节码文件加载到内存中,从而形成可以被JVM使用的类型的过程
2. 类加载过程
类加载过程会经历加载、链接、初始化,其中链接过程包括验证、准备、解析三个过程。
- 加载:首先通过全类名获取class文件的二进制流,然后在方法区中生成存储Class文件信息的数据结构,最后在堆中生成一个Class对象,作为访问方法区结构的入口。
- 验证:经过词法分析、语法分析,检测Class文件是否符合规范
- 准备:为类变量分配内存
- 解析:将符合引用转换为直接引用
- 初始化:调用clinit方法,为类变量赋初始值