运行时数据区 参考 JDK 8 的官方文档,Java 虚拟机运行时数据区主要由以下部分组成: 程序计数器(Program Counter Register) Java 虚拟机栈(JVM Stack) 本地方法栈(Native Method Stack) Java 堆(Java Heap) 方法区(Method Area) 运行时常量池(Runtime Constant Pool) 程序计数器 程序计数器是一块较小的内存空间,用于指示当前线程执行字节码的行号; 程序计数器是线程独享的存储空间,生命周期与线程相同; 每…

2021-08-11 0条评论 1204点热度 0人点赞 SilverLining 阅读全文

类加载的时机 一个 Class 从被加载到 JVM 内存中开始,到卸载出内存位置,整个生命周期历经七个阶段: 加载 Loading 验证 Verification 准备 Preparation 解析 Resolution 初始化 Initialization 使用 Using 卸载 Unloading 其中,验证、准备和解析三个部分统称为连接(Linking)。 什么情况下虚拟机需要开始加载一个类,在虚拟机规范中并没有对此进行强制约束,这点可以交给虚拟机的具体实现来自由把握。 加载 Loading 在加载阶段,虚拟…

2021-08-11 0条评论 1180点热度 0人点赞 SilverLining 阅读全文