在Java中如何主动的去释放无用对象,从而使得系统GC可以尽早释放内存?在编程上需要注意些什么?

 我来答
灵枝怡m
2013-07-04 · TA获得超过114个赞
知道小有建树答主
回答量:130
采纳率:47%
帮助的人:54.4万
展开全部
1、与C语言相比,垃圾回收器是JAVA的一大优势。其功能在于自动释放违背占用的内存,但何时去释放有其自身的算法,不支持使用者直接释放内存。
2、使用者所能做的只是使用System.gc()通知JAVA垃圾回收器在“合适”的时间逐个使用Object.finalize()清除未为程序引用的各个对象。
3、使用着调用Object的finalize()方法不会启动任何作用,只能是重写该方法执行写对象销毁前应做的操作,如关闭IO等。
4、使用者还可以做到的就是指定那些对象占用的内存会被释放,方法就是将对象的值赋为NULL。
5、编程用使用者应做的就是提高对象的复用性,尽量少的声明对象。
山外彩虹桥
2013-07-04
知道答主
回答量:51
采纳率:0%
帮助的人:25.5万
展开全部
垃圾回收机也不会立即回收该对象所占的资源,只有当内存不够用的时候,垃圾回收机才会去回收
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hyz4566758
2013-07-04 · TA获得超过264个赞
知道小有建树答主
回答量:455
采纳率:0%
帮助的人:128万
展开全部
手动调用Sysytem.gc(); 但也没有马上进行释放内存
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
talentwei8899
2013-07-04 · TA获得超过768个赞
知道小有建树答主
回答量:669
采纳率:0%
帮助的人:386万
展开全部
养成良好的编程习惯,避免内存泄露等低级错误。
要靠时间积累和体会
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式