一直以为JAVA2中自定义classloader的双亲委派模式是:自定义的classloader是继承自双亲!原来不是这样的。在《深入JAVA虚拟机》中有这样一段话:
“ 为更好地职解双亲委派模型,假设一个Java程序创建了一个名为“GrandMa”的自定义类
装载器。因为程序传递了null到 GrandMa的构造方法,Grandmn的双亲就是启动类装载器。过了
一段时司,程序创建另一个名为“Mom”的类装载器。因为程序传递了G randma的引用到
Mom的构造方法,Grandmn的双亲被没成是一个自定义的类装载器,指向Grandma。又过了一段时
间,程序创建了一个新的类装载器“Cindy”,因为应用程序传递了指向Mom的引用到Cindy的构
造方法.Cindy的双亲就被设定为用户自定义的Mom类装载器”
原来只要指定自定义类装载器中的双亲引用就好了,并不是说“继承自A类装载器,A就是它的双亲”