黑马程序员_ 黑马程序员_基础加强第二天——类加载器

  • 类加载器简介:
    • 加载java类的加载器,.class-->内存中的字节码
    • 系统默认有三种类加载器,他们是继承关系:BootStrap,ExtClassLoader,AppClassLoader
    • 类加载器也是java类,也要被其他类加载器加载,那其中加载的源头必定不是java类,这就是BootStrap。
  • 类加载器之间的父子关系和其管辖范围:
    1. BootStrap-->JRE/lib/rt.jar
    2. ExtClassLoader-->JRE/lib/ext/*.jar
    3. AppClassLoader-->CLASSPATH指定的所有jar或目录
    4. 自己定义的AppClassLoader子类-->自己指定的目录
  • 类加载器的委托机制:
    • 每个类加载器加载类时,先委托给上级加载器
    • 当所有祖宗类没有加载到类,又回到发起者,也加载不到,才会抛出ClassNotFoundException
    • 例:你自己写个System类是木有用的,因为委托机制的存在BootStrap会先将原本的System类加载进来
  • 编写自己的类加载器:
    • 理解:
      • 自定义的类加载器必须继承ClassLoader
      • loadClass中有关于委托机制的东西所以不要复写,findClass方法需要复写
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值