本帖最后由 328078121 于 2013-9-3 00:26 编辑
关于类加载器 package com.itheima; public class ClassLoaderTest { public static void main(String[] args){ System.out.println( ClassLoaderTest.class.getClassLoader().getClass().getName() //位置1 +"\n"+System.class.getClassLoader()); ClassLoader loader = ClassLoaderTest.class.getClassLoader(); while(loader != null) { System.out.println(loader.getClass().getName());//位置2 loader = loader.getParent(); } System.out.println(loader); } } 复制代码 输出结果是, sun.misc.Launcher$AppClassLoader null sun.misc.Launcher$AppClassLoader sun.misc.Launcher$ExtClassLoader null 我的疑问是在位置1和位置2,为何ClassLoaderTest.class.getClassLoader()最后的输出结果分别为sun.misc.Launcher$AppClassLoader和sun.misc.Launcher$AppClassLoader,sun.misc.Launcher$ExtClassLoader?为何多出一个sun.misc.Launcher$ExtClassLoader? |