java明显的一个优势是它的内存管理机制。你只需简单创建对象,java的垃圾回收机制负责分配和释放内存。然而情况并不像想像的那么简单,因为在Java应用中经常发生内存泄漏。 本教程演示了什么是内存泄漏,为什么会发生内存泄漏以及如何预防内存泄漏。 什么是内存泄漏? 定义:如果对象在应用中不再被使用,但由于它们在其他地方被引用,垃圾回收却不能移除它们(这样造成了很多内存不能释放,从而导致内存溢出的现象。译注)。 要理解这一定义,我们需要理解内存中对象的状态。下图说明了那些是未使用,那些是未引用。 从图中可以看到被引用对象和未引用对象(的范围)。未引用对象可以被