java 类加载器的双亲委派机制
坚持就是胜利
类加载器分类
引导类加载器
C++ 实现,加载java核心库 rt.jar
常见扩展类加载器 、 应用程序类加载器
扩展类加载器
主要加载扩展库中的类
应用程序加载器
主要加载我们自定义的类
加载流程
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-H6p3Gn14-1615135686299)(C:\Users\ThundeRobot\AppData\Roaming\Typora\typora-user-images\image-20210306002837232.png)]
双亲委派三次破坏
1-jdk1.2之间,用户直接去调用loadClass()方法;不能保证双亲委派机制的基本规则。后改成findClass()方法。
2-双亲委派机制的自我缺陷,使用了线程上下文类加载器。这种行为打破了双亲委派机制模型的层次关系来逆向使用类加载器,实际上违背了双亲委派机制的一般性原则。
3-用户对程序动态性的追求而导致的。例如鼠标,键盘灯热部署。