【深入理解Java原理】Java类加载机制

                                        Java类加载机制

本文章完整内容已经发布在微信公众号:程序员开发者社区,欢迎关注,后台回复: 资源  ,有惊喜

所谓类加载机制是指 Java 虚拟机如何加载class文件?

类加载机制

虚拟机将类的数据从Class文件加载到内存,并对数据进行校验,转换解析,和初始化最终形成Java虚拟机可以使用的Java类型

                      【深入理解Java原理】Java类加载机制_第1张图片

类从被加载到虚拟机内存开始,到卸载出内存为止,整个生命周期包括:

  • 加载(Loading)

什么情况下会去加载?

遇到 new(新建一个对象的时候) 、 getstatic(读取一个静态字段)、 putstatic(设置一个静态字段) 、invokestatic (调用一个静态方法)这4个字节码时,会去加载类

 取得类的二进制流, jar,或者网络,java.lang.对象

  •    验证

   类 是不是正常的文件格式,oxCAFEBASE

   版本号是否合理

  • 元数据验证

         是否有父类

        是否final类

       抽象方式是否实现了所有的抽象方法

  • 字节码验证

 运行检查

  •  准备 

   分配内存

你可能感兴趣的:(实战,Java,并发编程,Java,源码解读)