java JVM-线程上下类加载器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java JVM-线程上下类加载器相关的知识,希望对你有一定的参考价值。
public class One
public static void main(String[] args) throws Exception
ClassLoader loader=One.class.getClassLoader();
System.out.println(loader);
//获得当前线程的上下文加载器,未改变前和第一种是一样的
ClassLoader loader2=Thread.currentThread().getContextClassLoader();
System.out.println(loader2);
//修改当前线程的上下文修改器
Thread.currentThread().setContextClassLoader(new Loader("d:/myjava"));
System.out.println(Thread.currentThread().getContextClassLoader());
Class<Dema> c=(Class<Dema>) Thread.currentThread().getContextClassLoader().loadClass("cn.sxt.in.Dema");
System.out.println(c);
System.out.println(c.getClassLoader()); //因为定义了父类委派机制,所以还是app加载
以上是关于java JVM-线程上下类加载器的主要内容,如果未能解决你的问题,请参考以下文章
JVM深层系列「逆向ClassLoader加载机制」认识一下线程上下文类加载器实现
java中类加载器ClassLoader,双亲加载机制,启动类加载器,应用类加载器,线程上下文类加载器