JVM类加载机制

类加载机制是什么?

所谓类加载机制就是:JVM 虚拟机将 Class 文件加载至内存,并对数据进行校验、解析和初始化,最后形成可以被虚拟机直接使用的 Java 类型,也就是 java.lang.Class。

类加载机制的几个步骤

在这里插入图片描述

装载(Load)

  1. 通过类的全限定名称获取此类的二进制字节流;
  2. 将这个字节流所代表的静态数据结构转换为方法区的运行时数据结构;
  3. 在堆中生成一个代表这个类的 java.lang.Class 对象,作为方法区对这个类的访问入口。

链接(Link)

  • 验证
    用于保证被加载类的正确性,会进行文件格式、元数据、字节码、符号引用的验证。
  • 准备
    为类的静态变量分配内存,并初始化其默认值。
  • 解析
    将类中符号引用转换为直接引用,符号引用只是一组字面量,而直接引用就是直接指向目标的指针、相对偏移量或者一个间接定位到目标的句柄,即转换为目标对象的内存地址。

初始化(Initialize)

堆类的静态变量、静态代码块进行初始化操作(也就是我们给变量赋予的初始值),会执行 Clinit 方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值