类装载器
Java类加载
类加载的任务就是.class文件加载到到JVM转换成 java.lang,.class类
 类加载过程:装载、链接和初始化。
 a.装载:找到.class二进制字节码并加载到JVM,JVM通过类的全限定名以及类加载器完成类加载;
 b.链接:对二进制字节码的格式进行校验,初始装载类的静态变量以及解析类中的接口、类。
 c.初始化:执行类中的静态初始化代码、构造模块以及静态属性的初始化。
类装载器ClassLoader
- ClassLoader是一个抽象类
 - ClassLoader的实例将读入Java字节码将类装载到JVM中
 - ClassLoader可以定制,满足不同的字节码流获取方式
 - ClassLoader负责类装载过程中的装载阶段
 
类加载的种类:
- BootStrap ClassLoader 启动ClassLoader
 - Extension ClassLoader 扩展ClassLoader
 - App ClassLoader 应用/系统ClassLoader
 - Custom ClassLoader 自定义ClassLoader
 

解读:
 a.上面的是下面的父类
 b.自低向上检查类是否已经加载
 c.自顶而下尝试加载类
自低向上检查类是否加载
 双亲委托模型(确保加载的唯一性):当类收到加载请求时,它首先不会尝试加载这个类,
 而是把请求委托给父类加载器执行,每个类都是如此(如果还有父类继续上交),如果父
 类加载不了,子类加载才会进行加载。

                









