JVM中存在三个默认的类加载器。
1.BootstrapClassLoader
2.ExtClassLoader
3.AppClassLoader
AppClassLoader的父加载器是ExtClassLoader,ExtClassLoader的父加载器BootstrapClassLoader。
JVM在加载一个类时,会调用AppClassLoader的loadClass方法来加载这个类。不过在这个方法中,会先使用ExtClassLoader的loadClass方法来加载类。同样ExtClassLoader的loadclass会使用BootstrapClassLoader来加载类。如果BootstrapClassLoader加载到了就直接成功。如果BootstrapClassLoader没有加载到,那么ExtClassLoader就会自己尝试加载该类。如果没有加载到,那么则会由AppClassLoader来加载这个类。
所以,双亲委派指的是jvm在加载类时,会委派给ext和bootstrap进行加载,如果没加载到才有自己进行加载。