前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ClassLoader的分类及加载顺序

ClassLoader的分类及加载顺序

作者头像
IT技术小咖
发布2019-11-24 16:56:09
1.9K0
发布2019-11-24 16:56:09
举报
文章被收录于专栏:码上修行

1.主要分4类,见下图橙色部分

JVM类加载器:这个模式会加载JAVA_HOME/lib下的jar包

扩展类加载器:会加载JAVA_HOME/lib/ext下的jar包

系统类加载器:这个会去加载指定了classpath参数指定的jar文件

用户自定义类加载器:sun提供的ClassLoader是可以被继承的,允许用户自己实现类加载器

2.类加载器的加载顺序如图所示:

3.类加载顺序

JVM并不是把所有的类一次性全部加载到JVM中的,也不是每次用到一个类的时候都去查找,对于JVM级别的类加载器在启动时就会把默认的JAVA_HOME/lib里的class文件加载到JVM中,因为这些是系统常用的类,对于其他的第三方类,则采用用到时就去找,找到了就缓存起来的,下次再用到这个类的时候就可以直接用缓存起来的类对象了,ClassLoader之间也是有父子关系的,没个ClassLoader都有一个父ClassLoader,在加载类时ClassLoader与其父ClassLoader的查找顺序如下图所示:

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-08-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 码上修行 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档