聊聊JVM运行时数据区的堆内存
Java堆在JVM启动时创建内存区域去实现对象、数组与运行时常量的内存分配,它是虚拟机管理最大的,也是垃圾回收的主要内存区域 。
内存模型变迁:

- 为什么要有年轻区和老年区?
因为有的对象存活时间长短不一,垃圾回收起来策略不同,所以分两个区进行垃圾回收 - 永久区是什么:其实这个就是现在的方法区,用于存放类的信息,只不过1.7的时候 永久区占用的是堆内存
- 虚拟区不重要
Java堆在JVM启动时创建内存区域去实现对象、数组与运行时常量的内存分配,它是虚拟机管理最大的,也是垃圾回收的主要内存区域 。