您的位置:

java在内存中的分布,如何查看java程序的内存分布

本文目录一览:

JAVA如何分配内存的?栈内存是什么?堆内存?数据区?

你上面写的程序有问题,我就不说了,自己看看书。

关于java内存分配是这样的:

程序代码存储在"code segment"中,静态变量和字符串常量存储在“data segment"区域中,局部变量存储在"stack"(栈内存)中,nwe出来的东西(即对象)存储在"heap"(堆内存)中。

Java中内存分为几块

细分有5块:

1.寄存器

——

供CPU使用

2.本地方法区

——

调用系统底层内容

3.方法区(也叫:数据区,共享区,共享数据区)

——

存放全局变量,静态变量和字符串常量,和方法

4.栈

——

存放函数的参数值,局部变量的值等

5.堆

——

存放对象

Java静态方法和实例方法在内存的分布情况

像类、静态(static)变量还有代码块都存储在方法区里,栈中存储的是静态方法、实例方法和变量,堆中存储的是实例对象和实例变量。