实现通过类的权限定名获取该类的二进制字节流的代码块叫做类加载器
主要有以下四种类加载器:
- 启动类加载器(Bootstrap ClassLoader):用来加载Java核心类库,无法被Java程序直接引用
- 扩展类加载器(extensions class loader):用来加载Java的扩展库;Java虚拟机的实现会提供一个扩展库目录;该类加载器在此目录里面查找并加载Java类
- 系统类加载器(system class loader):也叫应用类加载器;它根据Java应用的类路径(CLASSPATH)来加载Java类;一般来说,Java应用的类都是由它来完成加载的;可以通过 ClassLoader.getSystemClassLoader()来获取它
- 用户自定义类加载器:通过继承 java.lang.ClassLoader类的方式实现