项目经理问我Java内存区域模型!急急急

Posted Java架构没有996

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了项目经理问我Java内存区域模型!急急急相关的知识,希望对你有一定的参考价值。

也就这么点吧

Java内存区域主要分为:堆,栈,方法区三大部分

1、堆:是内存区域中最大的部分,所有线程共享,其中存放创建的对象和数组。由于堆是垃圾收集器管理的主要区域,因此也叫GC堆。

2、栈:线程私有,与线程共生死。也就是每个线程JVM都会给它创建一片栈内存。

栈内存又分为:虚拟机栈,本地方法栈,和程序计数器

虚拟机栈用来描述Java方法的执行过程。每个方法的执行对应一个栈帧的入栈,方法的返回对应栈帧的出栈。

本地方法栈与虚拟机栈类似,区别是本地方法栈尾Native方法服务。Native方法也就是非Java代码的方法,一般是底层的C/C++方法

程序计数器占用的空间很小,用来记录线程执行的字节码的行号指示器,通俗来讲,就是记录当前线程执行的位置,以便线程切换后能够恢复到原来的位置

3、方法区:也被称为永久代,其中主要存放常量、静态变量、类信息。
其中的常量存放于运行时常量池中内存区域模型资料

最后,祝大家早日学有所成,拿到满意offer

以上是关于项目经理问我Java内存区域模型!急急急的主要内容,如果未能解决你的问题,请参考以下文章

#私藏项目实操分享#一文带你了解 Java 的内存模型与内存区域

什么?面试官问我Java内存模型!这不得给我加薪?

什么?面试官问我Java内存模型!这不得给我加薪?

华为面试官问我关于“多线程之内存模型”,看完这篇,自信满满!

JAVA内存模型(JMM简述)

JMM内存模型