本地堆(native heap)是指操作系统分配给进程的内存块,可用于存储任意数据类型。而 Java 堆(Java heap)是指 JVM 分配给 Java 程序使用的内存块,只用于存储 Java 对象。
本地堆可以使用 C 或 C++ 语言在程序中进行操作,如使用 malloc() 函数来申请内存,使用 free() 函数来释放内存。Java 堆只能使用 Java 语言进行操作,如使用 new 关键字来创建对象,GC(垃圾回收)来释放对象所占用的内存。
以下是本地堆和 Java 堆的示例代码:
// 本地堆示例代码
#include
// Java 堆示例代码 public class MyClass { private String name; public MyClass(String name) { this.name = name; } public static void main(String[] args) { MyClass obj = new MyClass("example"); obj = null; // 将 obj 设置为 null,GC 会回收其所占用的内存 } }