校招刷题群
高效刷题 迎战校招
校招精选试题
近年面笔经面经群内分享
Java刷题群 前端刷题群 产品运营群
首页 > java语言 > jvm内存结构
题目

说一下Java内存模型的组成部分和作用,以1.7为例

解答

Java虚拟机规范中将Java运行时数据分为六种。

1.程序计数器:是一个数据结构,用于保存当前正常执行的程序的内存地址。Java虚拟机的多线程就是通过线程轮流切换并分配处理器时间来实现的,为了线程切换后能恢复到正确的位置,每条线程都需要一个独立的程序计数器,互不影响,该区域为“线程私有”。

2.Java虚拟机栈:线程私有的,与线程生命周期相同,用于存储局部变量表,操作栈,方法返回值。局部变量表放着基本数据类型,还有对象的引用。

3.本地方法栈:跟虚拟机栈很像,不过它是为虚拟机使用到的Native方法服务。

4.Java堆:所有线程共享的一块内存区域,对象实例几乎都在这分配内存。

5.方法区:各个线程共享的区域,储存虚拟机加载的类信息,常量,静态变量,编译后的代码。

6.运行时常量池:代表运行时每个class文件中的常量表。包括几种常量:编译时的数字常量、方法或者域的引用。

C 6条回复 评论
Bunny

认真看完了,浅显易懂,学习到了。

发表于 2022-10-09 22:00:00
0 0
下雨天睡觉

安利一款我用过最好用的接口测试工具——apipost ,页面简洁,操作简单功能也多。

发表于 2022-05-13 22:00:00
0 0
Eroica

进我收藏夹吃灰去吧

发表于 2022-04-28 23:00:00
0 0
运输大队长

上完课拿到想要的offer了!!谢谢大拿老师!

发表于 2021-09-11 11:40:00
0 0
希望找回我家的猪

太好了,明了易懂,感谢

发表于 2021-09-10 23:50:00
0 0
dana

jdk9的内存模型已经不一样了

发表于 2019-12-29 19:59:15
0 0