Java.lang.Thread.setContextClassLoader() 方法
描述
java.lang.Thread.setContextClassLoader() 方法为这个Thread设置上下文ClassLoader。上下文ClassLoader可以在创建线程时设置,并允许线程的创建者提供合适的类 loader 加载类和资源时在线程中运行的代码。
声明
以下是 java.lang.Thread.setContextClassLoader() 方法的声明。
public void setContextClassLoader(ClassLoader cl)
参数
cl − 这是此线程的上下文类加载器。
返回值
此方法不返回任何值。
异常
SecurityException − 如果当前线程无法设置上下文 ClassLoader。
示例
下面的例子展示了 java.lang.Thread.setContextClassLoader() 方法的使用。
package com.tutorialspoint; import java.lang.*; public class ThreadDemo implements Runnable { Thread t; ThreadDemo() { t = new Thread(this); // this will call run() function t.start(); } public void run() { ClassLoader c = t.getContextClassLoader(); // sets the context ClassLoader for this Thread t.setContextClassLoader(c); System.out.println("Class = " + c.getClass()); System.out.println("Parent = " + c.getParent()); } public static void main(String args[]) { new ThreadDemo(); } }
让我们编译并运行上面的程序,这将产生下面的结果 −
Class = class sun.misc.Launcher$AppClassLoader Parent = sun.misc.Launcher$ExtClassLoader@35a16869