Java双亲委派模型

  • 从jdk1.2开始,java虚拟机规范推荐开发者使用双亲委派模式(ParentDelegation Model)进行类加载,其加载过程如下:
  1. 如果一个类加载器收到了类加载请求,它首先不会自己去尝试加载这个类,而是把类加载请求委派给父类加载器去完成
  2. 每一层的类加载器都把类加载请求委派给父类加载器,直到所有的类加载请求都应该传递给顶层的启动类加载器
  3. 如果顶层的启动类加载器加载器无法完成加载请求时,子类加载器尝试去加载,如果连最初发起类加载请求的类加载器也无法完成加载请求时,将会抛出ClassNotFoundException,而不再调用其子类加载器去进行类加载

 

  • 双亲委派模式的类加载机制的特点是java类它的类加载器一起具备了一种带优先级的层次关系,越是基础的类,越是被上层的类加载器进行加载,保证了Java程序的稳定运行

Java双亲委派模型