Java类加载器与双亲委派模型
Java程序中的3种类加载器:
Bootstrap ClassLoader 启动类加载器
Extension ClassLoader 扩展类加载器
Application ClassLoader 应用程序类加载器
User ClassLoader 自定义类加载器
双亲委任模型:
过程:一个类加载器收到类加载请求,它不会自己去尝试加载这个类,而是把这位请求委派给父类加载器,每一层次的类加载器都是如此,最终所有的类加载请求都应该传递到顶层的启动类加载器中,只有父类加载器无法完成加载请求时,子类加载器才会自己尝试加载这个类。
好处:保证Java类库中的类不受用户类影响,防止用户自定义一个Java类库中的同名类,引起问题。