最新要闻
- 天天微动态丨中国教师队伍建设研究/京师教师教育论丛
- 当前视讯!即将让核污水倒入大海!日本港口大量有毒海胆聚集 或出现爆发式增长
- 三星降低QD-OLED面板成本!让电视更具竞争力
- 世界关注:努比亚Z50新版下周首销:骁龙8 Gen2旗舰焊门员 性价比无敌
- 世界热消息:2消息,中超新贵签约32岁国脚,5中超外援上诉国际足联
- 环球新动态:超市宣称1元纸币将退出历史引热议 网友直呼太突然:官方回应不属实
- 视点!女子患异食癖3年吃上百块粉饼:体检身体无异常
- 环球速读:史上最好的真全面屏手机!努比亚Z50 Ultra上架接受预约
- 天天精选!禁止自带食材 关停300家店 海底捞从巨亏41亿到盈利13亿
- 美食博主三亚买3888元海鲜被好心人提醒多花1700:当事人心累
- 热消息:秋裤先别着急脱!“春捂”到底该“捂”哪儿?
- 前沿资讯!2023年安卓之光!小米13 Ultra手机壳曝光:背部造型抢眼
- 餐馆接到网吧10个外卖订单 结果被刷9个差评 店主:下次亲自送餐
- 天天微速讯:门店2299元 GXG男士羊毛大衣0.8折清仓大促:实付199元!
- 世界热资讯!乐堡苏打气泡酒12罐到手19.9元:低糖0脂无负担
- 威马员工在线讨薪:被恶心到了、恶心的事还有更多
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
双亲委派机制
双亲委派机制
简单理解
简单一句话:我爸是李刚,有事找我爸。简单三个字:往上捅双亲委派就是,有啥事,先问问老爹,如果老爹不行,再问问爷爷,如果爷爷也没有,再告爸爸,爸爸再告诉诉儿子,你自己看着办吧。
图例
:
【资料图】
Java是运行在Java的虚拟机(JVM)中的,但是它是如何运行在JVM中了呢?我们在IDE中编写的Java源代码被编译器编译成.class的字节码文件。然后由我们得ClassLoader负责将这些class文件给加载到JVM中去执行。JVM中提供了三层的ClassLoader:
Bootstrap classLoader:主要负责加载核心的类库(java.lang.*等),构造ExtClassLoader和APPClassLoader。
ExtClassLoader:主要负责加载jre/lib/ext目录下的一些扩展的jar。
- AppClassLoader:主要负责加载应用程序的主函数类
源码分析
打开IDEA,搜索ClassLoader,找到loadClass方法
protected Class> loadClass(String name, boolean resolve) throws ClassNotFoundException{ synchronized (getClassLoadingLock(name)) { // First, check if the class has already been loaded //先检测这个类是否以及被加载过 Class> c = findLoadedClass(name); if (c == null) { //如果没有被加载过 long t0 = System.nanoTime(); try { // 存在父加载器,递归的交由父加载器 if (parent != null) { //检查父加载器是否加载过 c = parent.loadClass(name, false); } else { c = findBootstrapClassOrNull(name); } } catch (ClassNotFoundException e) { // ClassNotFoundException thrown if class not found // from the non-null parent class loader } if (c == null) { /*在父类装入器上调用loadClass方法。如果父类为空,则使用虚拟机内置的类装入器。 调用findClass(String)方法来查找类。 如果使用上述步骤找到该类,并且resolve标志为true,则该方法将在结果class对象上调用resolveClass(class)方法。*/ //如果仍未找到,则按顺序调用findClass找到class long t1 = System.nanoTime(); c = findClass(name); // this is the defining class loader; record the stats sun.misc.PerfCounter.getParentDelegationTime().addTime(t1 - t0); sun.misc.PerfCounter.getFindClassTime().addElapsedTimeFrom(t1); sun.misc.PerfCounter.getFindClasses().increment(); } } if (resolve) { resolveClass(c); } return c; }}
代码图例
双亲委派机制的好处
JVM为什么要使用双亲委派这种机制呢?有什么好处呢?通过我们自己写的java.lang.string这个类启动报错中,我们就可以得出以下双亲委派的优点:1、保证了JVM提供的核心类不被篡改,保证class执行安全比如上文的string类,无论哪个加载器要加载这个类的话,由于双亲委派机制,最终都会交由最顶层的启动类加载器来加载,这样保证了string类在各种类加载器环境中,都是同一个类。试想下,没有双亲委派机制的话,各个加载器自己加载string类,有可能不同类加载器加载的string方法不一样,那样的话,我们的程序是不是就会一片混乱了。
2、防止重复加载同一个class双亲委派机制流程图中,我们可以看出,委托向上问一问,如果加载过,就不用再加载了
总结:防止篡改,防止重复加载类
四种类加载机制的管辖范围
1、启动类加载器(BootstrapClassLoader):是由c++编写的,是JVM自身的一部分。用来加载Java核心类库的(java.*)的。构造ExtClassLoader和AppClassLoader的。需要注意的是:由于其是虚拟机自身的一部分,开发者是服务直接获取到启动类加载器的引用的,所以是不允许直接通过引用进行操作。
这个类加载器负责存放在
2、扩展类加载器(ExtensionClassLoader):Java语言编写的,加载扩展库。如classPath中的jre,javax.*(也即:
3、应用程序类加载器(Application ClassLoader)这个类加载器是由sun.misc.Launcher#AppClassLoader实现的。由于这个类加载器是ClassLoader中的getSystemClassLoader()方法的返回值。所以也称为系统加载器。赋值加载用户类路径(ClassPath)上所指定的类库。
4、用户自定义类加载器(CustomClassLoader)Java语言编写的,用户自定义类加载器,可以加载指定路径的class文件
网上总结的脑图:
来源:https://img-blog.csdnimg.cn/2020121722082798.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2NvZGV5YW5iYW8=,size_16,color_FFFFFF,t_70
双亲委派机制
天天微动态丨中国教师队伍建设研究/京师教师教育论丛
当前视讯!即将让核污水倒入大海!日本港口大量有毒海胆聚集 或出现爆发式增长
三星降低QD-OLED面板成本!让电视更具竞争力
世界关注:努比亚Z50新版下周首销:骁龙8 Gen2旗舰焊门员 性价比无敌
最新:python实现客户端和服务端的UDP相互通信
【报资讯】hbuilderx打正式包所需的私钥证书的创建方法
全球新动态:2.【go-kit教程】go-kit启动http服务
室内单目深度估计-4
最新:kaggle中训练得到的output太大该怎么下载?
世界热消息:2消息,中超新贵签约32岁国脚,5中超外援上诉国际足联
环球新动态:超市宣称1元纸币将退出历史引热议 网友直呼太突然:官方回应不属实
视点!女子患异食癖3年吃上百块粉饼:体检身体无异常
天天热点!刷题疑问
环球速读:史上最好的真全面屏手机!努比亚Z50 Ultra上架接受预约
天天精选!禁止自带食材 关停300家店 海底捞从巨亏41亿到盈利13亿
天天讯息:day04-原生的API&注解方式
【环球新要闻】Git使用
美食博主三亚买3888元海鲜被好心人提醒多花1700:当事人心累
热消息:秋裤先别着急脱!“春捂”到底该“捂”哪儿?
前沿资讯!2023年安卓之光!小米13 Ultra手机壳曝光:背部造型抢眼
餐馆接到网吧10个外卖订单 结果被刷9个差评 店主:下次亲自送餐
天天微速讯:门店2299元 GXG男士羊毛大衣0.8折清仓大促:实付199元!
世界热资讯!乐堡苏打气泡酒12罐到手19.9元:低糖0脂无负担
威马员工在线讨薪:被恶心到了、恶心的事还有更多
广州塞车登“热搜”?“甜蜜的烦恼”重回一线城市,中国经济活力加快恢复
【Tire树】高效统计字符串
80、90后泪目 国产暗黑《赵云传重制版》试玩
1岁男童误食降糖药成植物人:愿康复顺利
环球速看:中央人民广播电台民族节目中心
Ubuntu安装Zabbix6.0
秒睡令人羡慕?医生提醒:可能是种睡眠障碍
《流浪地球2》科幻成真?武汉国博用特效“加建”太空电梯
今头条!【element UI】在 el-select 与 el-tree 结合组件
环球热文:python教程:模块的搜索路径
Python中模块的四种方式
《原子之心》种族主义漫画引争议:涉嫌歧视黑人!官方道歉
世界速读:我国载人航天将对国际开放 多国航天员希望参与中国空间站
每日热讯!驱动拖后腿 Intel显卡被低估:2000元档A770理论可刚RTX 3070
受贿、泄露内幕信息!湖北原副省长曹广晶被公诉
天天快看点丨下周发售!《卧龙:苍天陨落》新预告发布:PC/主机通吃
最新消息:EQ电动车中国表现欠佳 奔驰CEO:打价格战不是好事
环球热点!101岁老人每天赶2场麻将 医生:身体状态70岁
What's past is prologue
全球新资讯:车商不收特斯拉 新车一个月亏7万:新能源二手车都不受待见 厂商频降价
H5N1禽流感致死事件引世卫关注:事发柬埔寨、9年来首次
环球热点评!下单就送鲜蔬汤 海福盛冻干粥5杯大促:券后仅20.9元!
“真香定律”稳定发挥 迈凯伦全新SUV效果图曝光:预计售价282万
世界今日讯!关于修订《中国高尔夫球协会赛事活动管理办法》的通知
环球微头条丨中越边境民族文化艺术考察研究
每日热点:女子在门缝发现针头 是大妈拿注射器推大量不明液体:整栋楼遭殃 网友气愤
地球中心到底有什么?科学家发现竟是一个超大铁球 跟书里讲得不一样
NET6接口项目基础框架项目
Java 8 Lambda 方法引用 简记
全球看热讯:(数据库系统概论|王珊)第七章数据库设计-第三节:概念结构设计
Blender插件:水滴生成器(Droplet Generator)
环球速递!《分布式技术原理与算法解析》学习笔记Day22
消炎止血、除口臭!中药黄芩牙膏大促:3支不到20块(送牙刷)
【世界聚看点】《博德之门3》Xbox版遭遇技术难题
天天快看点丨激光溶脂和吸脂的区别_激光溶脂和吸脂怎么区分
每人1600元!北京要发消费券了:买手机、PC、无人机等都能用
为博流量 女子与前夫摆拍家暴并直播谎称报警:结果被官方通报
当前快看:吸水好干得快:洁丽雅新疆棉毛巾4.98元发车
【Java】ArrayList线程不安全的坑
世界观察:不点拍照按键也能拍照!荣耀Magic 5全新技术曝光:堪比变魔术
全球观热点:自信满满!萌娃觉得自己掌握了英语的窍门 张口让网友沉默
当前播报:电动车里什么最耗电?13类电器功率排名来了!出乎意料
当前关注:义乌市百货有限责任公司
【新要闻】饰组词语接龙_饰组词语
运算符重载
世界要闻:猛男专属 吉利几何E超吸粉特别版上市:9.98万元
全球热点评!《三体》被改编成剧本杀 三体宇宙索赔300万
热资讯!算法正在谋杀新闻 各种日报带头摆烂 十亿中国网友却为此狂欢
联想小新Pro 14天青蓝来了:13代酷睿 1TB硬盘
天天日报丨国产架构的龙芯CPU可以跑QQ了!底层重写、与x86/Arm肩并肩
当前滚动:全商汇深圳控股集团有限公司_全商汇
世界资讯:Eureka高可用集群服务端和客户端配置
今日精选:NEMU PA 1 实验报告
Spark系列 - (4) Spark任务调度
天天快资讯丨第122篇: JS函数一些基本概念
独居老人为家中热闹没装大门 多车误入院子
每日资讯:RTX 4090显卡都能用 长城850W金牌全模电源504元(每瓦0.6元)
day03-自己实现Mybatis底层机制-02
如何设计高并发项目
天天快资讯丨Android 应用接入 Firebase Crashlytics 进行崩溃分析上报
热议:Java 中 hashCode 和 equals 方法是什么?它们和 == 各有什么区别?
热门:沃尔沃XC90 T8充电版:经过最新升级后仍是首选SUV
全球新消息丨网友用AI生成《黑豹2》电影白人版海报 激怒正义人士
面向对象进阶第二天
环球视点!# 009 - 检验 (2)
热讯:邝飚
天天滚动:长度仅23.5mm:尼康尼克尔Z 26mm f/2.8饼干镜头上架
iPhone更香?调查显示近半数安卓用户考虑换苹果
最后一个武侠杂志 《今古传奇·武侠版》停刊:闭关修炼
今日快看!力压西游记、红楼梦 豆瓣9.8分:《大明王朝1566》封神国产剧
【天天快播报】python-函数
焦点热文:58.抽象数据类型
青海首次实现330千伏同塔双回线路中相导线带电消缺
男子工作期间上厕所摔伤:被判工伤
周杰伦发文谈论AI 称AI取代不了音乐创作的美感