【JVM】类加载流程之动态链接和静态链接
前言
类加载流程基本包含以下几个步骤:
验证:校验字节码文件的正确性
准备:给类的静态变量分配内存并对静态变量赋值默认初始值
解析:将符号引用转变为直接引用
初始化:将静态变量赋值,执行静态代码块
本文主要讲解自己对解析过程中的静态链接和动态链接的理解
一、静态链接
将静态方法转变为指向数据所存内存地址的指针或者句柄
个人理解就是将能够确定内存地址的静态方法直接转换为内存地址
二、动态链接
程序运行期间将符号引用转变为直接引用的过程
个人理解为加载过程中无法确定内存地址的方法,等到程序运行使用到的时候才进行内存地址的转换