双亲委派模型-类加载流程(加载、验证、准备、解析、初始化)

        双亲委派模式是java的类加载机制,确保类的层次关系,当类收到类加载请求时,该类会委派给器父类进行加载,当父类反馈不能加载时,才会又子类来完成加载。当父类加载过某个类后,子类是不会再次加载,从而防止重复加载。

       双亲委派模型可以保证java核心类库的安全性,同时防止类被重复加载。

       类加载过程包括加载、验证、准备、解析、初始化。

       首先类的装载,包含通过类的全限定名加载类class文件到内存,并生成该类的class对象作为数据的访问入口。

       验证的目的确保Class文件的字节流中的信息不会危害到虚拟机,

        1、文件格式验证,字节流是否符合class文件的规范,主次版本号是否在虚拟机范围内,常量池是否有不被支持的类型

        2、元数据,字节码的语义进行分析,这个类是否有父类,是否继承了不被继承的类

        3、字节码验证主要是对类中的方法体的验证,如方法中类型转换以及字节指令的流转是否正确

       准备主要是对类的-- 静态变量--分配内存初始化赋值等,这些内存分配在方法区

        解析完成符号引用到直接引用的转换

        初始化真正意义上的代码的执行。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值