国产成人AV无码一二三区,少女1到100集,国产精品久久久久精品综合紧,巜公妇之诱感肉欲HD在线播放

文章 > java基础 > java之JVM各类机制整理

java之JVM各类机制整理

java JVM机制

头像

小妮浅浅

2021-01-26 17:41:314617浏览 · 0收藏 · 0评论

在我们讨论java的基础部分时,大家都有用过jdk这个工具包,同时还会讲到另一个重要概念jvm。从名称上我们翻译一下,就是虚拟的计算机。对于jvm模块的内容比较难懂,所以我们可以先从它的一些机制入手:类加载双亲委派全盘负责委托机制。下面就这些机制分别带来讲解。

1.类加载机制

分为加载、验证 、准备 、解析 、初始化、 使用 、卸载。

1)加载

在硬盘上查找并通过IO读入字节码文件,使用到类时才会加载,例如调用类的main()方法,new对象 等等,在加载阶段会在内存中生成一个代表这个类的java.lang.Class对象,作为方法区这个类的各种数据的访问入口 。

2)验证

校验字节码文件的正确性

3)准备

给类的静态变量分配内存,并赋予默认值

4)解析

将符号引用替换为直接引用,该阶段会把一些静态方法(符号引用,比如main()方法)替换为指向数据 所存内存的指针或句柄等(直接引用),这是所谓的静态链接过程(类加载期间完成),动态链接是在程 序运行期间完成的将符号引用替换为直接引用,下节课会讲到动态链接 。

5)初始化

2.双亲委派机制

对类的静态变量初始化为指定的值,执行静态代码块。

应用程序类加载器AppClassLoader加载类的双亲委派机制源码,AppClassLoader的loadClass方法最终会调用其父类ClassLoader的loadClass方法,该方法的大体逻辑如下:

首先,检查一下指定名称的类是否已经加载过,如果加载过了,就不需要再加载,直接返回。

如果此类没有加载过,那么,再判断一下是否有父加载器;如果有父加载器,则由父加载器加载(即调用parent.loadClass(name, false);)。或者是调用bootstrap类加载器来加载。

如果父加载器及bootstrap类加载器都没有找到指定的类,那么调用当前类加载器的findClass方法来完成类加载。

3.全盘负责委托机制

“全盘负责”是指当一个ClassLoder装载一个类时,除非显示的使用另外一个ClassLoder,该类所依赖及引用的类也由这个ClassLoder载入。

以上就是java之JVM各类机制整理,前两种机制有点类似父类和子类,当类加载机制无法处理时,就会交给双亲委派机制。大家看完本篇后,要加强内容方面的理解。

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

《男医生的特殊治疗》| 压在窗户上C给别人看窗前视频| AAAAABBBBBB级是什么.| 家庭轮换完整版电影| 九九在线观看免费播放大全电视剧 | 小婕子太紧了太深了| 张柏芝门户大开照| 穿真空短裙挤公交会被赶走吗| 班长哭了能不能再抠游戏里面的钱| 窝窝影院在线观看免费播放电视剧| 《-滴都不许漏》何泽城林荫| 爸爸汆肉的日常| 《湿点》未增减板相似| 儿子控制不住对妈妈发脾气怎么办 | 苍井空《办公室爱欲》| 欧美-区| 女性扒开大腿内侧小肚子痒 | 公憩止痒小说原著叫什么名字| 二年成全免费观看影视大全| 国产精品高潮呻吟久久A片小说| 兄弟的老婆4免费观看电视剧| 倫理片《亂倫》| 男牛把小困困放到女生困里视频| 《晚上准备好纸巾》| 一起长大的约定| 妈妈姨妈三姐妹给我过生日| 黄金网站9.1免费入口| 在线高清理伦片A| 美女和男生一起努力的生孩子视频.. | 都市枭雄| 国产X9X9X9X9X9X任意...| 男女一起免费观看全集高清完整版..| 香港三级巜欲性高蜜桃成熟时类似| 蜜桃浏览器| 游览器| 儿子找不到媳妇妈妈能以身相许吗| 成全视频免费观看在线观看第14..| 乳房| 亲吻的视频| 大杂烩(TXT)小说阅读| 免费B站看大片真人电视剧