jvm类加载之双亲委派模型
双亲委派模型
类加载是具有层次结构的,也就是父子关系,这种父子关系不是继承,而是通过组合来复用类加载的代码。Bootstrap 是所有类加载器的父亲。
双亲委派模型的工作过程:
每个类都有缓存,先判断自己的缓存有没有加载的此类,如果没有然后委托父类,父类再查询自己缓存,直到bootstrap ,还是没有,再由当前的类加载器加载,并将其放入它自己的缓存。
这样设计的好处?
主要为了安全性,避免用户自己编写的类动态替换java的一些核心类,同事也避免重复加载,因为jvm中区分不同类,不仅仅是根据类名,相同的class文件被不同的ClassLoader加载就是不同的两个类。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
芯片产业管理和营销指北(3)—— 赢得客户
zer0black
2024-06-09 14:34:09
【stars-one】 星念轻小说下载器
Stars-one
2024-06-09 14:22:28
shell编程相关的
shell腳本獲取腳本所在目錄 執行腳本的父目錄不一定是當前的工作目錄。 url=$(dirname $(readlink -f $0))
馬昌偉
2024-06-09 14:16:47
kvm链接克隆虚拟机迁移到openstack机器的实验
馬昌偉
2024-06-09 14:16:47
【Python】DQN处理CartPole-v1
Dsp Tian
2024-06-09 14:14:07
P1355 神秘大三角(凸包)
SnowLove
2024-06-09 14:13:17
前端使用 Konva 实现可视化设计器(13)- 折线 - 最优路径应用【思路篇】
xachary
2024-06-09 14:10:57
生产计划范围的扩展 - 工单的拆分与合并
kentzhang
2024-06-09 14:09:57
APS系统设计经验分享(时间推导II - 2023.09)
kentzhang
2024-06-09 14:09:57
排程过程中任务锁定的外延与内涵
kentzhang
2024-06-09 14:09:57
排程系统中关于任务优先级的需求延伸与设计构思
kentzhang
2024-06-09 14:09:57
从零手写实现 nginx-11-文件处理逻辑与 range 范围查询合并
葉止水
2024-06-09 14:02:36
nginx快速分析日志并找出攻击IP
xiaobingch
2024-06-09 13:59:16
Vue CLI 4与项目构建实战指南
Mifen
2024-06-09 13:40:15