Java 类生命周期
Last updated
Last updated
类的完整生命周期包括:加载、验证、准备、解析、初始化、使用、卸载
将class加载到JVM中
1、加载类的二进制数据
2、在JVM堆中创建java.lang.Class对象
3、在JVM方法区中存储类信息
此处还涉及到类加载机制
对class信息进行验证
主要包括四种检查类型:
格式检查
魔数检查
版本检查
长度检查
语义检查
是否继承final
是否有父类
抽象方法是否有实现
字节码验证
跳转指令是否指向正确位置
操作数类型是否合理
符号引用验证
符号引用的直接引用是否存在
为类变量(静态变量)分配内存并设置默认值
将常量池的符号引用转换为直接引用
为类变量(静态变量)赋予正确的初始化值
类的卸载