Java面试题

题目

讲一讲 Jvm 内存模型。

答案

Java 内存模型中分五个区域,方法区、堆、栈、本地方法栈和程序计数器。其中堆和方法区是线程共享的,不是线程安全的,栈,本地方法栈和程序计数器是线程私有的,线程安全的。

内存区域 描述
方法区 存放类相关的信息,类变量还有常量
存放变量的具体数据和数组的具体数据
存放局部变量,方法的参数,以及方法里面定义的局部变量,如果是引用类型存放的地址
本地方法栈 存放 nvtive 方法的参数,方法里面定义的局部变量的信息
程序计数器 存放当前线程执行的位置