虚拟机类加载机制
2018-04-25 21:36:37 22 举报
Java虚拟机类加载机制流程图
作者其他创作
大纲/内容
对字节码描述的信息进行语义分析,保证信息符合Java语言规范的要求
使用Using
字节流是否符合Class文件格式规范,且能被JVM处理
完成4个阶段的验证动作
字节码验证
在方法区中为类变量分配内存并设置初始值(零值),仅包括static的类变量,不包括实例变量
对类自身以外信息进行匹配性校验,确保解析能正常进行
验证Verification
符号引用验证
真正开始执行Java程序代码,也是执行类构造器方法的过程
卸载Unloading
连接Linking
准备Preparation
虚拟机类加载机制
初始化Initialization
元数据验证
文件格式验证
确保字节流中包含的信息符合当前虚拟机的要求,并且不会危害虚拟机自身的安全
通过数据流控制流分析,确定语义是合法符合逻辑的,在运行时不会危害JVM安全
解析Resolution
加载Loading
开始
1、通过一个类的全限定名获取定义类的二进制字节流2、将流代表的静态存储结构转化为方法区的运行时数据结构3、在内存中生成Class对象,作为方法区这个类的各种数据的访问入口4、数组类本身不通过类加载器创建,由JVM直接创建
JVM将常量池内的符号引用替换为直接引用
结束
0 条评论
下一页