双亲委派模型

java类加载器:BootStrapClassLoader(顶层加载器,加载%JAVA_HOME%/lib下的jar包),ExtClassLoader(加载%JAVA_HOME%/lib/ext下的jar包),AppClassLoader(加载classPath下的jar包,同时它也是自定义加载器的父类)

向上委派到顶层加载器为止,向下查找到发起加载的加载器为止(发起加载的加载器可能是自定义加载器)

 

 

 

双亲委派模型的好处:

主要是为了安全性,避免用户自己编写的类动态替换java的一些核心类,比如String。

同时避免了类的重复加载,因为jvm中区分不同类,不仅仅是根据类名,同时要根据被加载的加载器,相同的class文件被不同的加载器加载就是不同的两个类。

 

posted @ 2022-05-09 19:25  W_k  阅读(16)  评论(0编辑  收藏  举报