类的加载生命周期
发布日期:2022-03-03 10:44:09
浏览次数:9
分类:技术文章
本文共 446 字,大约阅读时间需要 1 分钟。
类的加载生命周期
1、加载
”加载“是”类加机制”的第一个过程,在加载阶段,虚拟机主要完成三件事:
(1)通过一个类的全限定名来获取其定义的二进制字节流
(2)将这个字节流所代表的的静态存储结构转化为方法区的运行时数据结构
(3)在堆中生成一个代表这个类的Class对象,作为方法区中这些数据的访问入口。
注意此时会扫描到我们的代码中是否有静态变量或者是静态方法等等这些静态数据结构,还未分配内存。
2、验证
验证的主要作用就是确保被加载的类的正确性。
3、准备
准备阶段主要为类变量分配内存并设置初始值。这些内存都在方法区分配。注意此时就会为我们的类变量也就是静态变量分配内存,但是普通成员变量还没。
4、解析
解析阶段主要是虚拟机将常量池中的符号引用转化为直接引用的过程。
5、初始化
这是类加载机制的最后一步,在这个阶段,java程序代码才开始真正执行。我们知道,在准备阶段已经为类变量赋过一次值。在初始化阶端,程序员可以根据自己的需求来赋值了。初始化时候才会为我们的普通成员变量赋值。
转载地址:https://blog.csdn.net/yangjieckw/article/details/113617207 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
不错!
[***.144.177.141]2024年04月22日 20时45分48秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
我把公众号所有的精华文章都整理出来了
2019-04-28
ROS中的坐标系规定及数据单位
2019-04-28
MATLAB - 三维图绘制
2019-04-28
C++语法例程速查笔记(个人笔记)
2019-04-28
ROS学习过程中的错误记录5 - sw2urdf导出功能包的编译错误
2019-04-28
关于机械臂仿真的几款软件简介
2019-04-28
MATLAB - 符号运算(持续更新)
2019-04-28
机器人动力学 - 机器人学中的惯性矩阵坐标转换及在SolidWorks中的测量
2019-04-28
SolidWorks转Simscape Multibody(两种方案)
2019-04-28
Simscape Multibody —— Revolute Joint的使用
2019-04-28
Ubuntu 主机名及用户名颜色显示问题的解决
2019-04-28
matlab随机函数使用笔记
2019-04-28
matlab数据统计函数使用笔记
2019-04-28
matlab函数重载功能的实现笔记
2019-04-28
在ROS中调用外部链接库文件(.so)配置方法
2019-04-28
webots中的三种建模方式
2019-04-28
Robotics Toolbox在Simulink中的模块库
2019-04-28
Robotics Toolbox 轨迹插值笔记
2019-04-28
MATLAB - 线型、Marker点等属性的设置
2019-04-28
MATLAB - plot中使用LaTeX
2019-04-28