一、类加载器的分类
类加载器的设计JDK8和8之后的版本家别较大,JDK8之前的版本默认的类加载器有以下几种
- 启动类加载器 (Bootstrap)
- 扩展类加载器 (Extension)
- 应用程序类加载器 (Application)
类加载器的分类-启动类加载器
- 启动类加载器(Bootstrap) 是由Hotspot虚拟机提供的,使用C++编写的类加载器
- 默认加载java安装目录 /jre/lib下的类文件 ,比如rt.jar tool.jar resources.jar等等
可以通过启动类加载器加载用户jar包:
使用-Xbootclasspath/a:jar包目录/jar包名 进行扩展
- 拓展类加载器和应用程序类加载器都是JDK中提供的,使用java编写的类加载器
- 他们的源码位于sun.misc.Launcher中 , 是一个静态内部类. 继承自URLClassLoader
具备通过目录或指定jar包将字节码文件加载到内存中