一.汇总 JVM是运行在操作系统之上的,它与硬件没有直接的交互.先说一下JVM的内存区域,当函数开始运行时,JVM拿到自己的内存将自己的内存区域进行了分割,分为五块区域:线程共享的有堆.方法区,线程私有的有java栈.本地方法栈.程序计数器. 方法区是用来加载class文件的区域,静态变量.常量.类元信息.运行时的常量池存放在在方法区中, 方法区在jdk1.7之前它又叫做永久代,但是jdk1.8之后改成元数据空间了: new的对象都存放在堆中: 栈也叫栈内存,8种类型的基本变量.对象的引用变量.