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的类加载器体系结构和双亲委派机制的主要内容,如果未能解决你的问题,请参考以下文章

类文件的结构JVM 的类加载过程类加载机制类加载器双亲委派模型

Java中类加载器和双亲委派机制

java双亲委派机制及作用

双亲委派机制

JVM笔记二双亲委派机制

Java中常见的类加载器及双亲委派机制的原理