- Bootstrap Classloader
加载$JAVA_HOME中jre/lib/rt.jar 里所有的class 或 Xbootclassoath选项指定jar
2 Extension Classloader
加载java平台中扩展功能的一些jar包,包括$JAVA_HOME中jre/lib/*.jar 或 Djava.class.path所指定目录下的类和jar包
3 App Classloader
加载classpath中指定的jar包及Djava.class.path所指定的目录下的类和jar包
4 Custom Classloader
通过java.lang.ClassLoader的子类自定义加载class,属于应用程序根据自身需要自定义的Classloader 如tomcat、jboss都会根据j2ee规范自行实现Classloader
双亲委派原则
保证父类加载了则子类加载器就不加载了,父类未加载则子类再去执行加载。