Java中的类加载器

什么是类加载过程?

所谓的类加载过程,就是将类的字节码加载到内存,生成java.lang.Class实例的过程。该实例用来为程序提供操作此类或访问此类数据的入口。

验证应用类加载器加载classpath下的类

自定义testLoader类放在classpath以外的文件路径中,文件的内容如下:

在命令行手动编译并运行,起初输出中文结果报错:

之后改为英文 ,能够正确输出

此时若直接在eclipse环境中的一个程序内输出

则会报错查无此文件。即使在外界路径中已经编译成功了也是如此。

若在classpath范围内创建文件,并查看它的类加载器,会有如下结果:

输出为

从上到下依次为:father.class自己的类加载器,父、爷类加载器

爷爷加载器为空的原因是:bootstrap是用C++写的,他不像另外两个有父类子类这样的继承关系。

加载过程中的双亲委派

bootstrap(核心加载)——extension(加载扩展)——system classloader

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值