Java 的内存管理就是对象的分配和释放。在 Java 每个对象的内存空间(基本类型除外)都需要手动通过关键字 new 来实现,所有的对象都在堆(Heap)中分配空间。而对象的释放是由 GC 决定和执行的。这种方式确实简化了人力工作,但是也加重的 JVM 的工作。这也是 Java 程序运行速度比较慢的原因之一,因为 GC 必须监控每一个对象的运行状态(对象的申请,引用,被引用,赋值等)才能保证正确释放对象。