ClassLoader的分类有哪些?ClassLoader加载顺序是什么?类加载的顺序又是什么?

ClassLoader的分类有哪些?加载顺序是什么?类加载的顺序又是什么?

答:ClassLoader分为4种:Jvm类加载器(BootstarpClassLoader),Jvm扩展类加载器(extClassLoader),系统类加载器(SystemClassLoader),自定义类加载器(AppClassLoader)

----------------------------------------------------------------------------------------------------------------------------

ClassLoader加载顺序:

=>Jvm类加载器加载JAVA_HOME/lib下的所有jar文件

=>Jvm扩展类加载器加载JAVA_HOME/lib/ext下的所有jar文件

=>系统类加载器加载指定classpath下所有jar文件

=>自定义类加载器加载继承官方提供的ClassLoader类的自定义实现加载器class文件。

----------------------------------------------------------------------------------------------------------------------------

类加载的顺序是

加载->链接(验证+准备+解析)->初始化(使用前的准备)->使用->卸载 

Jvm会在启动的时候去加载系统所必须的JAVA_HOME/lib下的所有jar文件,

Jvm对于第三方类会才用懒加载的方式,即:用到的时候再进行加载,加载完成会放入缓存,以便后续使用。

 

posted @ 2019-02-15 13:09  余总出去浪  阅读(1861)  评论(0编辑  收藏  举报