2.2.4 Java堆
JVM里所管理内存最大的一块,所有对象以及数组都在堆上,类的成员变量也是在堆上
这块区域是垃圾收集器管理的主要区域("GC 堆 ")。现在收集器基本都是采用分代收集算法,Java 堆还可以分成:新生代和老年代(新生代还可以分成 Eden 空间、From Survivor 空间、To Survivor 空间等)。
不需要物理上的连续内存空间,只需要逻辑上,和磁盘空间一样,可以通过 -Xmx 和 -Xms 来控制动态扩展内存大小,如果动态扩展失败会抛出 OutOfMemoryError 异常。