java的类加载器体系结构和双亲委派机制
Posted liuwd
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java的类加载器体系结构和双亲委派机制相关的知识,希望对你有一定的参考价值。
类加载器将字节码文件加载到内存中,同时在方法区中生成对应的java.land.class对象 作为外部访问方法区的入口。
类加载器的层次结构:
引导类加载器《-------------扩展类加载器《--------------------------引用程序类加载器《-----------------自定义类加载器
1、引导类加载器加载jre/lib/rt.jar包下加载核心类库
2、扩展类加载器 负责加载jre/lib/ext/*.jar
3、引用程序类加载器 加载我们自定义类
4、自定义加载器 负责加载指定类
双亲委派:
自定义一个java.utils.HashMap的类,包名与类名相同,是否能够编译通过?如果编译通过,加载的是哪一个hashMap类,为什么?
答案:可以编译通过 引用java自带的hashMap 双亲委派先加载java
双亲委派机制,当类加载器收到要加载类的请求时,不管自己能不能加载,首先加载请求给父类,如果父亲还有父亲,在向上递交,直到顶级父类,如果最顶层的能加载就加载如果不能加载就交给儿子加载,依次类推,直达最后,如果还不能加载就报出异常
以上是关于java的类加载器体系结构和双亲委派机制的主要内容,如果未能解决你的问题,请参考以下文章