JVM(八) 类加载器
来源:互联网 发布:阿里java开发规范手册 编辑:程序博客网 时间:2024/05/24 05:37
前面博客中简单提到类加载器,并有demo展示。在这里详细介绍一下。
http://blog.csdn.net/qwlzxx/article/details/71404166
类加载器用来把类加载到Java虚拟机中。
类加载器之间的关系:
Java虚拟机自带的类加载器
根(Bootstrap)类加载器:该加载器没有父加载器。它负责加载虚拟机的核心类库,如java.lang.*等。之前博客中提到Test1.java的例子,返回null(http://blog.csdn.net/qwlzxx/article/details/71404166)说明了这一点。根类加载器从系统属性sun.boot.class.path所指定的目录中加载类库。根类加载器的实现依赖于底层操作系统,属于虚拟机的实现的一部分,它并没有继承java.lang.ClassLoader类。
扩展(Extension)类加载器:它的父加载器为根类加载器。它从java.ext.dirs系统属性所指定的目录中加载类库,或者从JDK的安装目录的jre\lib\ext子目录(扩展目录)下加载类库,如果把用户创建的JAR文件放在这个目录下,也会自动由扩展类加载器加载。扩展类加载器是纯Java类,是java.lang.ClassLoader类的子类。
系统(System)类加载器:也称为应用类加载器,它的父加载器为扩展类加载器。它从环境变量classpath或者系统属性java.class.path所指定的目录中加载类,它是用户自定义的类加载器的默认父加载器。系统类加载器是纯Java类,是java.lang.ClassLoader类的子类。
用户自定义的类加载器
用户可以定制自己的类加载器(User-defined Class Loader)。Java提供了抽象类java.lang.ClassLoader, 所有用户自定义的类加载器应该继承ClassLoader类。
- JVM(八) 类加载器
- JVM学习笔记(八):类加载器以及双亲委派模型介绍
- JVM学习笔记(八)类加载机制-类加载器
- jvm探秘八:类加载机制之类加载过程
- 八、类加载器
- JVM高级特性与实践(八):虚拟机的类加载机制
- JVM高级特性与实践(八):虚拟机的类加载机制
- JVM高级特性与实践(八):虚拟机的类加载机制
- 深入理解JVM(八)——类加载的时机
- 深入理解JVM(八)——类加载的时机
- 深入理解JVM(八)——类加载的时机
- 深入理解JVM(八)——类加载的时机
- JVM类加载器
- JVM类加载器
- jvm 类加载器
- JVM类加载器
- JVM类加载器
- jvm类加载器
- js基础:关于Boolean() 与 if
- Eclipse更换Theme
- PowerPC的字节序问题
- React Native 性能优化之可取消的异步操作
- Dataquest学习总结[2]
- JVM(八) 类加载器
- Android -- Wifi启动流程分析
- 2017专利申请流程,专利申请中的细节和注意事项
- 写入iCloud在模拟器和真机上失败的解决办法
- Ubuntu常见问题以及解决方案(长期更新)
- React Native发布APP之打包iOS应用
- 可供创业团队技术开发参考的10条经验
- 猜字母
- SpringBoot--实现拦截器