1.获取类加载器(ClassLoaer)的途径
ClassLoader loader = 对象.getClassLoader();获取当前类的ClassLoader
ClassLoader loader = Thread.currentThread().getContextClassLoader();获取当前线程上下文的ClassLoader
ClassLoader loader = ClassLoader.getSystemClassLoader();获取系统的ClassLoader
ClassLoader loader = DriverManager.getCallerClassLoader();获取调用者的ClassLoader
2.ClassLoader源码内容:

例题:
public class JVMTest1{
public static void main(String args[]) throws Exception{
String[] string = new String[2];
System.out.println(string.getClass().getClassLoader());
System.out.println("---------");
JVMTest1[] test = new JVMTest1[2];
System.out.println(test.getClass().getClassLoader());
System.out.println("-------");
int[] ints = new int[2];
System.out.println(ints.getClass().getClassLoader());
}
}

对于第一个输出的null来说,String数组的元素类型是String类型,所以应有根加载器加载,所以输出null。
对于第二行输出来说,JVMTest1数组的元素类型是JVMTest1,是我自己写的类,所以是系统类加载器加载。
对于第三行输出来说,int数组的元素类型是int,属于基本类型,所以没有加载器,所以输出null。
来源:CSDN
作者:在这之间
链接:https://blog.csdn.net/a_killer_/article/details/104160826