当前位置:首页 > 内存 > 正文

jvm有哪几个内存区域

  • 内存
  • 2024-08-16 20:14:54
  • 9371

一、Java把如何把内存划分为4个部分?

Java将内存分为四部分:

1.栈段——由编译器自动分配和释放,用于存储函数参数值、局部变量值等。具体方法是:执行完成后,系统自动释放JVM内存资源。

2.堆段-通常由程序员分配来存储新创建的对象和数组。JVM会不时检查该对象是否没有干扰引用。指向这个对象将会回收它。

3.静态区(数据段)——存放全局变量、静态变量、字符串常量,且不释放。

4.代码段-存储程序中方法的二进制代码,并允许多个对象共享代码区空间。


二、java虚拟机中内存规划为哪些区域1、JVM内存区域1,是程序员中的一小块内存区域,作为当前线程执行的字节码行号的指示器。2、Java栈与程序计数器相同,Java栈(虚拟机栈)也是线程特定的,其生命周期与线程相同。通常存储基本数据类型和对象引用(指向对象开头的指针)