package cn.edu.tju.test;
public class ClassLoaderTest13 {
public static void main(String[] args) {
System.out.println(Thread.currentThread().getContextClassLoader());
Thread.currentThread().setContextClassLoader(new MyClassLoader());
System.out.println(Thread.currentThread().getContextClassLoader());
}
}
线程上下文类加载器的使用步骤:
1.获取旧的线程上下文类加载器
ClassLoader classLoader=Thread.currentThread().getContextClassLoader();
2.设置并使用新的线程上下文类加载器
3.恢复旧的线程上下文类加载器
线程上下文类加载器的目的就是打破类加载的双亲委托机制。
比如,启动类加载器bootstrap class loader要加载MySQL的驱动类,就可以通过线程上下文类加载器(默认为系统类加载器)来加载位于classpath下的MySQL类