类加载器(双亲委派!!)

 启动类加载器(c++写的,java代码无法直接访问)、扩展类加载器、应用程序类加载器、用户自定义类加载器(User ClassLoader)

注意:这里存在的加载器之间的层级关系并不是以继承的方式存在的,而是以组合的方式处理的。

 

 

 

 

 

 

 

 

         

 

 

 

 

 

 

 

 

 

打破双亲委派机制的例子:jdbc-driver类(不在JAVA_HOME/jre/lib目录下)加载过程,DriverManager.class.getClassLoader()的结果返回的是null,说明是启动类加载器负责加载DriverManager,但是其代码块中的loadInitialDrivers()方法调用了应用程序类加载器加载jdbc-driver驱动,打破了双亲委派机制。

 

 

 

 

 

 

 

posted on 2022-11-29 09:41  HHHuskie  阅读(16)  评论(0编辑  收藏  举报

导航