java类加载机制(硬核)

本文深入探讨了Java的类加载机制,包括加载、链接(验证、准备、解析)、初始化、使用和卸载五个阶段。详细阐述了每个阶段的功能,如加载时如何获取类的二进制字节流并转化为运行时数据结构,验证阶段的四个步骤确保字节码的安全性,准备阶段为静态变量分配内存并设置初始值,解析阶段将符号引用替换为直接引用,以及初始化阶段的类变量和资源初始化计划。
摘要由CSDN通过智能技术生成

类加载机制分为加载,链接(验证,准备,解析),初始化,使用,卸载

加载

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

验证

	1. 文件格式验证。
	2. 元数据验证。
	3. 字节码验证。
	4. 符号引用验证。

准备

	1. 正式为类中定义的变量(静态变量)分配内存并设置类变量初始值得阶段。

解析

	1. 解析阶段是将java虚拟机常量池的符号引用替换为直接引用的过程。
       符号引用(接口、字段、类方法、接口方法、方法类型、字段句柄和调用点限定符)

初始化

	1. 根据程序员通过程序编码指定的主观计划去初始化类变量和其他资源。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值