一马平川
不积跬步无以至千里,后继才能薄发

JVM双亲委派模型笔记

2021年06月27日
0
未分类

上次学习了JVM的类加载过程,之前学习过的双亲委派模型变得生疏了,这篇笔记用于重新学习和以后复习~

JVM双亲委派模型

什么是双亲委派模型?

在加载一个类之前,先使用父加载器加载,若返回null才进行加载。

引入双亲委派模型是为了解决一些核心类,只能由某个加载器进行加载,避免有全限名一样但类加载器不一样的情况。

类的唯一标识是什么?

加载类的类加载器+类全限名

双亲委派模型的破坏

  1. jdk1.2,双亲委派模型出现时需要对旧类加载逻辑进行兼容,加入了findClass()方法,使得可以通过重写findClass()方法进行破坏
  2. jdk中定义好的标准(SPI),但需要外部jar包进行实现的,如JDBC,需要父加载器指定子加载器进行加载,破坏了双亲委派模型
  3. 热部署,热加载

类加载器类型

  1. BootStrap ClassLoader:<JAVA_HOME>\lib
  2. Extension ClassLoader:<JAVA_HOME>\lib\ext
  3. Application ClassLoader:ClassPath
  4. User ClassLoader

如果喜欢这篇文章,可以给作者评个份哦~

原文声明: "转载本站文章请注明作者和出处Nothinglin ,请勿用于任何商业用途"

公众号:苦逼的学生仔