深入理解双亲委派机制在Tomcat源码中的应用

前言:

  •  写这篇文章的背景是在看JVM面试题中,有提到 类加载机制(双亲委派机制,以及怎么打破双亲委派。结合之前有看过Tomcat源码在启动类的过程中,默认会创建几个自定义的类加载器。一直比较疑惑为什么会创建几个自定义的类加载器。

概述:

  • 第一部分:JVM类加载机制以及加载流程
    1. 了解类加载器的分类
    2. 自定义类加载器代码实现
    3. 双亲委派机制的由来
    4. 双亲委派机制源码
    5. 为什么要打破双亲委派机制
  • 第二部分:Tomcat 源码启动怎么自定义类加载器(打破双亲委派机制)
    1. 自定义类加载器的关系图
    2. 具体源码介绍

详情:

第一部分:JVM中类加载机制
        1. 类加载器的分类

               引导类加载器:

                        介绍:引导类加载器这个类使用C/C++ 语言实现的,嵌套于JVM内部,java程序无法操作这个类 。用来加载java核心类库。

                        例如: JAVA_HOME/jre/lib/rt.jar、resource.jar 等相关jar( 负责加载支撑JVM运行的位于JRE的lib目录下的核心类库)

               扩展类加载器:

                       介绍:扩展类加载器这个类使用java 语言编写 ,一般位于jre/lib、ext目录下加载的类库。

               应用类加载器:

                      介绍:负责加载ClassPath路径下的类包(理解:target包下编译以后的class 文件),主要就是加载你自己写的类

               自定义类加载器:        

                      介绍:通过继承ClassLoader类重写父类的类加载方法(一般是重写findClass() 方法)

               

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值