Java虚拟机的内存划分

Java虚拟机的内存划分(简)

为了提高运算效率,就对空间进行了不同区域的划分,因为每一片区域都有特定的处理数据方式和内存管理方式。
在这里插入图片描述


JVM的内存划分(详):

先看图:

在这里插入图片描述

在这里插入图片描述

图解:

在这里插入图片描述

要点,说明:

  • 线程共享:方法区、堆; 线程隔离(线程独占):虚拟机栈、本地方法栈、程序计数器(寄存器)
  • 方法区 也是一种特殊的 堆结构
  • 方法区用于存储:已被虚拟机加载的类信息、常量、静态变量、动态生成的类等数据。
  • 栈(虚拟机栈)还包含:基本数据类型、对象的引用
  • jdk1.6下字符串常量池是在永久区(方法区)中,是与堆完全独立的两个空间
    jdk1.7,1.8下字符串常量池已经转移到堆中了,是堆中的一部分内容
  • 方法区的内存回收主要是针对常量池以及类型的卸载,但是类型卸载在实际场景中的条件相当苛刻。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值