标签:style provider article ica 常见 模块 loader XML https
常见的三种类加载器
启动器 Bootstrap c++编写的 jvm的一部分 开发者无法直接获取
标准扩展加载器类 Sun java的类库扩展包加载到内存
应用程序加载器 程序的类加载器
特殊的 线程上下文类加载器
继承应用程序加载器的用户自定义加载器
为什么使用?
防止内存中出现多份同样的字节码 、安全性
破坏jvm
第一次兼容
第二次 JNDI服务:JNDI的目的就是对资源进行集中管理和查找,它需要调用独立厂商实现部部署在应用程序的classpath下的JNDI接口提供者(SPI, Service Provider Interface)的代码。
第三次 osgi 一个模块一个类加载器
另外tomcat 奇特的双亲委派
WebappClassLoader内部重写了loadClass和findClass方法,实现了绕过“双亲委派”直接加载web应用内部的资源,当然可以通过在Context.xml文件中加上开启正统的“双亲委派”加载机制
为什么要这样做?
https://blog.csdn.net/qq_38182963/article/details/78660779
标签:style provider article ica 常见 模块 loader XML https
原文地址:https://www.cnblogs.com/miduos/p/9250565.html