请看以下代码:public class Test {
public static void main(String[] args) {
ClassLoader systemLoader = ClassLoader.getSystemClassLoader();
Thread.currentThread().setContextClassLoader(systemLoader.getParent());
System.out.println(Thread.currentThread().getContextClassLoader());

Test t = new Test();
System.out.println(t.getClass().getClassLoader());
}
}输出结果如下:sun.misc.Launcher$ExtClassLoader@addbf1
sun.misc.Launcher$AppClassLoader@19821f
我的问题是:
我在main方法的当前线程已经设置了类加载器为ExtClassLoader,那么创建Test对象的时候,为什么还是AppClassLoader加载了呢?
书上说如果设定了当前线程的加载器,那么当前线程在加载类的时候,都会采用设定好的加载器啊。
所以创建Test对象的时候应该打印ExtClassLoader才对啊,为什么还会是AppClassLoader呢?
谢谢大家!