6

有效的 Java:第 6 项:消除过时的对象引用。

一般来说,每当一个类管理自己的内存时,程序员都应该警惕内存泄漏。每当一个元素被释放时,该元素中包含的任何对象引用都应该被清空。

我认为我没有完全理解描述。

管理自己的内存的类的例子是什么 - 我可以想到数组,列表,也许是映射。

任何人都可以更详细地解释书中的项目吗?谢谢

4

2 回答 2

4

一个简单的例子是ArrayList,当从列表末尾删除一个元素时,它必须使数组元素为空,而不是简单地减少“最后一个元素”索引。否则,删除的对象仍然可以被ArrayList.

于 2011-05-31T05:50:05.940 回答
1

它可能是在谈论编写自己的课程以及其他答案。因此,例如,如果您有一个管理内存或资源的类,那么您需要确保在该类被销毁时释放内存或资源。一个很好的例子是,如果您有一个管理与数据库的连接的类。必须关闭连接才能在您的类被销毁之前释放资源。

于 2011-05-31T20:11:54.117 回答