java内存区域(1)

java内存模型分为线程共享区,线程独占区

线程共享区:方法区,java堆

线程独占区:虚拟机栈,本地方法栈,程序计数器

程序计数器:一块较小的内存空间,记录当前线程所执行的字节码行号指示器

栈:执行的是java方法或本地方法

  虚拟机栈:执行java方法。每个方法执行都会创建一个栈帧

    栈帧:存放的是局部变量表等。

      局部变量表:存放编译期可知的各种基本数据类型,引用类型

      栈溢出: 递归调用方法时,方法不断调用,超出了栈帧。

      内存溢出: 超出内存

  本地方法栈:执行本地方法

堆:存放对象的实例

方法区:方法,接口,类的版本,字段 

原文地址:https://www.cnblogs.com/mm163/p/11075639.html