JVM 类的加载(一)- 类的加载流程

类的加载分三个过程,加载、链接、初始化,同时在链接也分为三步骤:验证、准备、解析。 以下图所示指针

输入图片说明

加载

指的就是加载本地的class文件code

链接

**验证:**验证.class文件是否合法图片

**准备:**为static变量赋初始化默认值it

**解析:**用一段代码来解释class

Class A{
    public void callB(){
        b.bMethod();
    };
}

Class B{
    public void bMethod(){
        ......
    };
}

在解析类的时候,b.bMethod()就是符号引用,最近会被替换成指成bMethod的指针Pointer就是直接引用变量

初始化

为变量赋正确的初始值,这一步与链接中的准备看似相同,实则不一样引用

例如public static int a = 10;im

a这个变量先在准备阶段赋默认值为0,而后在初始化阶段赋初始值为10。call

别的类型一样这种方式加载。static

相关文章
相关标签/搜索