Skip to content

Instantly share code, notes, and snippets.

@bzdgn
Created December 17, 2015 19:58
Show Gist options
  • Save bzdgn/bd56dba6e2a042a18d09 to your computer and use it in GitHub Desktop.
Save bzdgn/bd56dba6e2a042a18d09 to your computer and use it in GitHub Desktop.
ClassLoader Hierarchy
package com.levent;
import java.net.URL;
import java.net.URLClassLoader;
public class DelegationClasses {
public static void main(String[] args) {
URLClassLoader classLoader = (URLClassLoader) ClassLoader.getSystemClassLoader();
do{
System.out.println("Class Loader: " + classLoader);
for (URL url : classLoader.getURLs()) {
System.out.printf("\t %s\n", url.getPath());
}
} while ((classLoader = (URLClassLoader) classLoader.getParent()) != null);
System.out.println("Class Loader: Bootstrap classLoader");
}
}
@bzdgn
Copy link
Author

bzdgn commented Jul 5, 2016

Output;

java -cp classes com.example.DelegationPaths
sun.misc.Launcher$AppClassLoader@4e0e2f2a
/D:/MainEclipse/tezgah/class-loader-examples/ex01/classes/
sun.misc.Launcher$ExtClassLoader@33909752
/C:/Program%20Files/Java/jdk1.8.0_73/jre/lib/ext/access-bridge-64.jar
/C:/Program%20Files/Java/jdk1.8.0_73/jre/lib/ext/cldrdata.jar
/C:/Program%20Files/Java/jdk1.8.0_73/jre/lib/ext/dnsns.jar
/C:/Program%20Files/Java/jdk1.8.0_73/jre/lib/ext/jaccess.jar
/C:/Program%20Files/Java/jdk1.8.0_73/jre/lib/ext/jfxrt.jar
/C:/Program%20Files/Java/jdk1.8.0_73/jre/lib/ext/localedata.jar
/C:/Program%20Files/Java/jdk1.8.0_73/jre/lib/ext/nashorn.jar
/C:/Program%20Files/Java/jdk1.8.0_73/jre/lib/ext/sunec.jar
/C:/Program%20Files/Java/jdk1.8.0_73/jre/lib/ext/sunjce_provider.jar
/C:/Program%20Files/Java/jdk1.8.0_73/jre/lib/ext/sunmscapi.jar
/C:/Program%20Files/Java/jdk1.8.0_73/jre/lib/ext/sunpkcs11.jar
/C:/Program%20Files/Java/jdk1.8.0_73/jre/lib/ext/zipfs.jar
Bootstrap classloader

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment