Java类加载器加载类顺序
来源:互联网 发布:淘宝买鞋有什么风险 编辑:程序博客网 时间:2024/05/16 08:07
java ClassLoader的学习
java是一门解释执行的语言,由开发人员编写好的java源文件先编译成字节码文件.class形式,然后由java虚拟机(JVM)解释执行,.class字节码文件本身是平台无关的,但是jvm却不是,为了实现所谓的一次编译,到处执行,sun提供了各个平台的JVM实现--也就是说jvm不是跨平台的,编译好的字节码文件被放在不同的操作系统平台上的jvm所解释执行,这个章节主要解释一下JVM装载类的机制
1.ClassLoader是个毛东东?
一个类如果要被JVM所调度执行,必须先把这个类加载到JVM内存里,java.lang下有个很重要的类ClassLoader,这个类主要就是用来把指定名称(指定路径下)的类加载到JVM中
2.ClassLoader的分类
主要分4类,见下图橙色部分
JVM类加载器:这个模式会加载JAVA_HOME/lib下的jar包
扩展类加载器:会加载JAVA_HOME/lib/ext下的jar包
系统类加载器:这个会去加载指定了classpath参数指定的jar文件
用户自定义类加载器:sun提供的ClassLoader是可以被继承的,允许用户自己实现类加载器
类加载器的加载顺序如图所示:
3.类加载顺序
JVM并不是把所有的类一次性全部加载到JVM中的,也不是每次用到一个类的时候都去查找,对于JVM级别的类加载器在启动时就会把默认的JAVA_HOME/lib里的class文件加载到JVM中,因为这些是系统常用的类,对于其他的第三方类,则采用用到时就去找,找到了就缓存起来的,下次再用到这个类的时候就可以直接用缓存起来的类对象了,ClassLoader之间也是有父子关系的,没个ClassLoader都有一个父ClassLoader,在加载类时ClassLoader与其父ClassLoader的查找顺序如下图所示
- Java类加载器加载类顺序
- Java类加载器加载类顺序
- Java类加载器加载类顺序
- Java类加载器加载类顺序
- java类加载器的加载顺序
- Java类加载顺序
- java类加载顺序
- Java类加载顺序
- Java 类加载顺序
- java 类加载顺序
- java类加载顺序
- Java类加载顺序
- java类加载顺序
- Java类加载顺序
- java类加载顺序
- Java类加载顺序
- Java类加载顺序
- java 类加载顺序
- win7下utantu上网设置
- PyCon 2011 - Hidden Treasures of the Python Standard Library - 解析电子邮件地址
- QC问题汇总
- hdu 3718 Similarity
- Eclipse中LogCat不显示
- Java类加载器加载类顺序
- $.getJSON方法不调用回调函数
- js把字符串倒过来
- nonpaged pool问题 20110330
- PyCon 2011 - Hidden Treasures of the Python Standard Library - 为Python命令行添加了按键自动补全内容和命令历史功能
- 生成网页校验码图片(C#代码)
- [Android] ListView 效率优化
- 服务器与磁盘阵列柜有哪些连接方式?
- IE7无法显示主页,显示IE配置页面