| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Java知识库 -> 什么是双亲委派? -> 正文阅读 |
|
[Java知识库]什么是双亲委派? |
部分高手面试文档已整理,需要的小伙伴可以扫描添加下方二维码 普通人:嗯.........额.... 高手:关于这个问题,需要从几个方面来回答。 首先,我简单说一下类的加载机制 就是我们自己写的java源文件到最终运行,必须要经过编译和类加载两个阶段。 编译的过程就是把.java文件编译成.class文件。 类加载的过程,就是把class文件装载到JVM内存中,装载完成以后就会得到一个Class对象,我们就可以使用new关键字来实例化这个对象。 而类的加载过程,需要涉及到类加载器。 JVM在运行的时候,会产生3个类加载器,这三个类加载器组成了一个层级关系 每个类加载器分别去加载不同作用范围的jar包,比如
除了系统自己提供的类加载器以外,还可以通过ClassLoader类实现自定义加载器,去满足一些特殊场景的需求。 所谓的父委托模型,就是按照类加载器的层级关系,逐层进行委派。 比如当需要加载一个class文件的时候,首先会把这个class的查询和加载委派给父加载器去执行,如果父加载器都无法加载,再尝试自己来加载这个class。 这样设计的好处,我认为有几个。
以上就是我对这个问题的理解。 总结JVM虚拟机一定面试必问的领域,因为我们自己写的程序运行在JVM上,一旦出现问题,你不理解,就无法排查。 就像一个修汽车的工人,他不知道汽车的工作原理,不懂发动机,那他是无法做好这份工作的。 好的,本期的普通人VS高手面试系列就到这里结束了,喜欢的朋友记得点赞和收藏。 另外,这些面试题我都整理成了笔记,大家有需要的可以私信获取。 部分高手面试文档已整理,需要的小伙伴可以扫描添加下方二维码 ↓↓↓↓↓↓↓↓ |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 0:14:57- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |