国产成人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各类机制整理,前两种机制有点类似父类和子类,当类加载机制无法处理时,就会交给双亲委派机制。大家看完本篇后,要加强内容方面的理解。

关注

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

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

学长电影院抱我做H| 妈妈的职业4免费观看完整版高清| 快拨出天我是你母亲歌词监控 | 坤坤寒入桃子里电视剧免费看| 《朋友的未婚妻》| EXO妈妈MV高清免费观看| 蜜桃成熟时| 蜜桃成时熟2| 韩剧在线观看免费高清完整版 | 《性房纵欲》在线观看| 《炸梨吧!巨棒》免费阅读漫画 | 欧洲尺码少女16集全电视剧剧情.. | 小雪解开乳罩给老杨摸| 欧美一区二区| 36A的胸能夹到睾丸上吗图片| 男人碰到紧的会念念不忘吗?| 白石真琴| 麻豆| 极品家丁| 轮流和两个男人一起很容易染病吗| 《特殊游泳教练》| 女生给男生吃小头头 | 坐在竹马鸡上背单词小说| LIBRA| 欢愉骑行1-27章内容概括 | 《喂奶人妻厨房HD》| 美腿视频| 打开B站看片| 何以笙默床戏| 麻花传剧原创MV在线看完整版高..| 又粗又长小雪敬老院| 小蜜桃免费观看高清电视剧| 中字《喝醉的丈夫被结城送回家》| 妈妈的朋友9| 大叔和妈妈免费观看电视剧第3集| 色翁荡熄1-13老卫淑芬| 樱花视频在线观看免费高清电视剧| 《诱人的女房东3》| 戴上自安小玩具调到10档| 《一滴都不许漏》何泽城林荫| 18岁免费观看高清电视剧推荐