中华网通行证
用户名 密码

细述Java技术开发规则--基本篇(2)
中华网科技 http://tech.china.com 2005-07-22 10:10:03
进入BBS】【进入聊天室】【 推荐给朋友 】【浏览字号: 】【关闭窗口

  
5.经常从finalize ()中调用super.finalize ()
  这里的finalize ()是java在进行垃圾收集的时候调用的,和finally不一样。如果你的父类没有定义finally()的话,你也应该调用。这里有两个原因:(1)在不改变代码的情况下能够将父类的finally方法加到你的类中。 (2)以后你会养成习惯调用父类的finally方法,即使父类没有定义finally方法的时候。
  正确的方法应该如此:
public class parentFinalize
{
protected void finalize () throws Throwable
{
super.finalize();
// FIXED
}

  参考:"The Java Programming Language" by Ken Arnold and James Gosling, page 49.


6.不要在finalize ()中注销listeners
  不要再finalize ()方法中中注销listeners,finalize ()只有再没有对象引用的时候调用,如果listeners从finalize()方法中去除了,被finalize的对象将不会在垃圾收集中去除。
public void finalize () throws Throwable
{
bButton.removeActionListener (act);
}


7.不要显式的调用finalize ()方法
  虽然显式的调用这个方法可以使你确保你的调用,但是当这个方法收集了以后垃圾收集会再收集一次。
public class T7
{
public void finalize() throws Throwable
{
close_resources ();
super.finalize ();
}
public void close_resources()
{
}
}

class Test
{
void cleanup () throws Throwable
{
t71.finalize();
// 调用
t71 = null;
}
private t71 = new T7 ();
}

  对于这样的调用我们应该自己创建一个释放的方法,做最初finalize ()所作的事情,当你每次想显式的调用finalize ()的时候实际上调用了释放方法。然后再使用一个判断字段来确保这个方法只执行一次,以后再调用就没关系了。
public class T7
{
public synchronized
void release () throws Throwable
{
if (!_released)
{
close_resources ();
// do what the old ‘finalize ()‘ did
_released = true;
}
}
public void
finalize () throws Throwable
{
release ();
super.finalize ();
}
public void close_resources()
{
}
private boolean _released = false;
}

class TestFixed
{
void closeTest ()
throws Throwable {
t71 .release ();
// FIXED
t71 = null;
}
private T7 t71 = new T7 ();
}

首页 上页 | 1 | 2 | 3 | 下页 尾页  共 3

 

50款最具性价比数码相机/MP3推荐!
作者:csdn/flyingwcy 来源: 

发表言论:
笔  名:
查看评论
﹣相关报道
JavaBeans 程序开发基础教程 (2005-07-20 11:43:44)
Java图像处理技巧四则 (2005-07-19 15:19:04)
Java入门:J2ee学习流程简介 (2005-07-04 13:29:00)
Java入门需掌握的30个基本概念 (2005-06-17 10:50:55)
初学Java的备忘录 (2005-06-02 11:33:41)
如何迅速成为Java高手 (2005-05-30 13:57:49)

﹣精彩回顾
·揭秘越南姑娘的“性契约”(组图)
·中国研制成功银河麒麟操作系统
·近处偷拍野狮性爱 野草丛中见柔情(图)
·难得一见“水下分娩”全程跟拍(组图)
·古代性器具及性惩罚工具(组图)
·揭密中外历史上乱伦的名人们(组图)
·探秘世界各地诡异的干尸新娘(组图)
·隋唐两个王朝的九大著名"绿帽子"(组图)
·另类的惨烈:螳螂血战壁虎谁更凶猛(图)
·一分钟平静死去 注射死刑全过程(图)

进入BBS】【进入聊天室】【 推荐给朋友 】【浏览字号: 】【关闭窗口


潮流·时尚
·市场上的天价手机全搜罗
·一周降幅最大手机导购
·FM调频收音功能手机选购
·索尼爱立信三新机曝光
·诺基亚N73音乐版精品赏
·热门便携笔记本搜索导购
·近期最新上市机型大盘点
·矩阵Matrix鼠标垫细评测
·19寸20寸22寸液晶该买谁
·近期几款热卖MP3大推荐
·四大即将退市经典MP3选购
·06年最火七大DC缺点曝光
·六百万像素超值机型推荐
·诺基亚推出随身小音箱
·LG直板巧克力KG99评测
·MOTO新机即将国内上市
·超低价蓝牙手机导购
·130万像素一样拍出好照片
·诺基亚两款蓝牙耳机新品
·索爱纯美折叠机Z558评测

软件下载
·豪杰大眼睛 V2.5
·Foxmail V6.5
·天网防火墙Athena
·极品五笔 V6.8
·PPS网络电视
·超级兔子魔法设置
中华网搜索
站内搜索
全网搜索




热门搜索
耳机 印刷 手机 拖鞋
减速机 钟表 成人用品
减肥 枸杞 T恤 升降机
心理 健康 彩票 招聘
礼品 旅游 猎头 培训

产品服务
·机会!机会不容错过
·中华商机,搜索创新
·准确快捷,搜你所搜
·¥来¥往,尽在中华邮
·中华搜索,贴心搜索




科技频道主编信箱