JVM 由哪几部分组成?

JVM的组成

我们先笼统的总结一下

  • 类装载子系统
  • 运行时的数据区(内存)
    • 堆区(heap) : new 出来的对象都放到堆里
    • 栈区(stack):线程栈,线程私有,存放线程用到 的局部变量,执行方法的时候,就会将用到的方法插入栈,一个方法对应于一个栈帧。
    • 方法区(method area):存储已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据。JDK 8开始,HotSpot将永久代(Permanent Generation)移除,取而代之的是元空间(Metaspace)。
    • 程序计数器(PC): 指向当前指令指向的地址
  • 字节码执行引擎

其实就这三部分,但是主要我们要了解它的流程
我画了一张图,大家可以看一下请添加图片描述

第一步:

jdk将.java文件编译为.class字节码文件,

第二步:

类加载子系统将 A.class 文件放入JVM数据区也就是内存内存
此时我们需要了解一下JVM的内存模型:

JVM的数据区由五个部分组成

  • 堆区(heap) : new 出来的对象都放到堆里
  • 栈区(s
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值