类的加载过程

加载 --连接   验证 准备 解析   初始化

 

 

加载 

 加载 二进制流

 方法区数据结构

在java堆中生成对于的java.lang.class对象

 

验证 

  元数据

  字节码

 

准备

 

 static  初始化变量   <1

 静态常量

解析

 

符号引用 替换为 直接引用。

符号引用 二进制的依赖关系。硬盘存储形式

直接引用 指针 或者地址偏移量  内存形式。

 

 

初始化 <1 在准备阶段 初始化, 这个阶段赋值。

 

执行类构造器  前调用父构造方法。

<clinit>是线程安全的

 

posted @ 2017-01-06 11:12  超超hd  阅读(138)  评论(0编辑  收藏  举报