ClassLoader类是一个抽象类,其后所有的类加载器都继承自ClassLoader(不包括启动类加载器)。
常用方法| 方法名称 | 描述 |
|---|---|
| getParent() | 返回该类加载器的超类加载器 |
| loaderClass(String name) | 加载名称为name的类,返回结果为java.lang.Class类的实例 |
| findClass(String name) | 查找名称为name的类,返回结果为java.lang.Class类的实例 |
| findLoadedClass(String name) | 查找名称为name的已经被加载过的类,返回结果为java.lang.Class类的实例 |
| defineClass(String name,byte[] b,int off,int len) | 把字节数组b中的内容转换为一个java类返回结果为java.lang.Class类的实例 |
| resolverClass(Class> e) | 连接指定的一个Java类 |
方式一:获取当前类的ClassLoader
clazz.getClassloader()
方式二:获取当前线程上下文的ClassLoader
Thread.currentThread().getClassLoader()
方式三:获取系统的ClassLoader
ClassLoader.getSystemClassLoader()
方式四:获取调用者的ClassLoader
DriverManager.getCallerClassLoader()



