管理自己记忆的班级

时间:2011-05-31 05:36:04

标签: java memory-leaks effective-java

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

  

一般来说,每当上课   管理自己的记忆,程序员   应警惕内存泄漏。   每当元素被释放时,任何元素   包含在的对象引用   元素应该被淘汰。

我认为我完全不了解这种描述。

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

有人可以在书中更详细地解释这个项目吗? 感谢

2 个答案:

答案 0 :(得分:4)

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

答案 1 :(得分:1)

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