JVM的内存区域是怎么划分的?

JVM的内存区域指的是JVM的运行时数据区

主要分为方法区虚拟机栈本地方法栈程序计数器五个主要区域。

1.方法区(Method Area)

线程共享区域,存着类的结构信息、常量、静态变量。

2.堆(Heap)

最大的共享区,专门放对象和数组。

3.虚拟机栈(JVM Stack)

线程私有,存着局部变量、操作数栈、动态链接、方法出口信息、基本类型变量、对象引用。

4.本地方法栈(Native Method Stack)

线程私有,用来分配内存给非Java方法。

类似于虚拟机栈,专为JNI调用本地代码服务。

5.程序计数器(Program Counter Register)

每个线程都有一个独立的程序计数器,线程私有。

保存当前线程执行的Java 方法字节码指令的地方或者行号。

相关推荐
m0_5613596717 小时前
使用Python处理计算机图形学(PIL/Pillow)
jvm·数据库·python
HAPPY酷17 小时前
构造与析构:C++ 中对象的温柔生灭
java·jvm·c++
海心焱20 小时前
从零开始构建 AI 插件生态:深挖 MCP 如何打破 LLM 与本地数据的连接壁垒
jvm·人工智能·oracle
hello 早上好21 小时前
04_JVM 类加载子系统与内存结构
jvm
Serene_Dream1 天前
Java 垃圾收集器
java·jvm·面试·gc
weisian1511 天前
JVM--6-深入JVM栈内存:方法调用的执行舞台
jvm·栈帧·栈内存
Serene_Dream1 天前
Java 内存区域
java·jvm
star12581 天前
数据分析与科学计算
jvm·数据库·python
2301_822382761 天前
使用Python进行网络设备自动配置
jvm·数据库·python
m0_706653231 天前
Python深度学习入门:TensorFlow 2.0/Keras实战
jvm·数据库·python