双亲委派模型(类加载)
-
一、什么是双亲委派模型?
除了启动类以外,其他类都应该有自己的父级加载器。
-
二、双亲委派模型有什么用?
1.公用且具有一致性。 2.安全。保护系统的类不会被恶意的覆盖。
-
三、双亲委派模型机制?
1.如果一个类收到类加载请求之后,就会先搜索它的内建加载器定义的所有的 “具名模块”。 注意:【“具名模块” 是jdk9之后出现的模块化开发。Jkd8 以及之前是直接委托给父级加载器去加载。】 2.如果在“具名模块”中找到模块定义,就会使用该类加载器加载。 3.如果在“具名模块”中没有找到该模块定义,就会去委托给父级加载器,直到启动类加载器。 4.如果父级加载器反馈它不能完成加载,那子的类加载器才自己来加载。 5.在类加载路径下找到的类将成为这些加载器的无名模块。 注意:【什么是“无名模块”?如果不是模块化做的,称为无名模块。】