三大类加载器 经典例子

 

import java.net.URL;

import sun.misc.Launcher;

/**
* 演示
* appClassLoader
* extClassloader
* bootstrapLoader
* 所加载的文件
* @author JoyoungZhang@gmail.com
*
*/
public class ClassLoaderTest {
public static void main(String[] args) throws Exception {

ClassLoader appClassLoader = ClassLoader.getSystemClassLoader();
ClassLoader extClassloader = appClassLoader.getParent();
ClassLoader bootstrapLoader = extClassloader.getParent();
System.out.println("the bootstrapLoader : " + bootstrapLoader);
System.out.println("the extClassloader : " + extClassloader);
System.out.println("the appClassLoader : " + appClassLoader);

System.out.println();
System.out.println("bootstrapLoader加载以下文件:");
URL[] urls = Launcher.getBootstrapClassPath().getURLs();
for (int i = 0; i < urls.length; i++) {
System.out.println(urls[i]);
}

System.out.println();
System.out.println("extClassloader加载以下文件:");
System.out.println(System.getProperty("java.ext.dirs"));

System.out.println();
System.out.println("appClassLoader加载以下文件:");
System.out.println(System.getProperty("java.class.path"));

}
}

 

posted @ 2015-01-22 15:23  hansongjiang8  阅读(141)  评论(0编辑  收藏  举报