62,614
社区成员
发帖
与我相关
我的任务
分享
package simple;
class AAA{}
public class ClassLoaderTest {
public static void main(String[] args)throws Exception {
ClassLoader loader1 = ClassLoaderTest.class.getClassLoader();
ClassLoader loader2 = Class.forName("simple.AAA").getClassLoader();
ClassLoader loader3 =Thread.currentThread().getContextClassLoader();
System.out.println(loader1 == loader2);//true
System.out.println(loader1 == loader3);//true
}
}
public class Test {
/**
* @param args
* @throws ClassNotFoundException
*/
public static void main(String[] args) throws ClassNotFoundException {
ClassLoader ld = Test.class.getClassLoader();
System.out.println(ld.getClass());
// class sun.misc.Launcher$AppClassLoader
Class<?> c = Class.forName("a.Test");
System.out.println(c.getClassLoader().getClass());
// class sun.misc.Launcher$AppClassLoader
c = Class.forName("a.Test",true,Thread.currentThread().getContextClassLoader());
System.out.println(c.getClassLoader().getClass());
// class sun.misc.Launcher$AppClassLoader
// 说明在没有setContextClassLoader情况下,contextClassLoader是AppClassLoader
}
}