Java ClassLoader及双亲委托模式

想要看ClassLoader的详细讲解, 请转至http://blog.csdn.net/xyang81/article/details/7292380   这篇讲的很详细,也很好。

下面简单讲讲ClassLoader的双亲委托模式:
	这个机制是java classloader范畴的内容。java 虚拟机要将被用到的java类文件通过classLoader 加载到JVM内存中。首先classloader 分三个级别,最上级 : bootstrap classLoader  中间级:extension classLoader   最低级 app classLoader.当需要加载某个类的时候,会看看这个类是否已经被加载了,如果没有,会请求app 级来加载,app 请求 extension 级  extension 请求 bootstrap级, 由最高级来负责加载(这个就是双亲委派,委托 上两级的loader来做加载),如果高级的无法加载 则会将人物返回给 下一级 以此类推 最后如果双亲都不行 就由自己来加载。 为什么要用这个机制? 比如 java.lang.String 这个类,这个是jdk提供的类, 如果我们自定义个 包名:java.lang 然后在里面创建一个String 类, 当我在用String类的时候,根据前面所说,是由bootstrap级的loader 来进行加载的,这个时候它发现其实已经加载过了jdk的String了,那么就不会去加载自定义的String了,防止了重复加载 也加大了安全性。
	后续的再补充,这里只做一个简单的笔记。

你可能感兴趣的:(java基础知识)