DANCE WITH JAVA

开发出高质量的系统

常用链接

统计

积分与排名

好友之家

最新评论

Effective Java 46-57


因为有些被使用比较少,只简单列举了一下
四十六、努力使失败保持原子性
1,一般而言,一个失败的方法调用应该使对象保持"它在被调用之前的状态",具有这种属性的方法被称为具有
失败原子性。
四十七、不要忽略异常
例如这样的代码是错误的
try{
 //.....
}catch(SomeException e){
}
四十八、对共享可变数据要同步访问
注:Java的双重检查模式并不保证一定正确
四十九、避免过多的同步
1,为了避免死锁的危险,在一个被同步的方法或者代码中,永远不要放弃对客户的控制。
2,通常同步区域内应该做尽可能少的工作
五十、永远不要在循环外部调用wait
五十一、不要依赖于线程调度器,因为这可能造成不可移植性
1,不要使用Thread.yield来修正程序,因为在不同的Jdk中,不能移植
2,线程优先级是Java平台上最不可移植的特征了。
3,对大多数程序员来说,Thread.yield的唯一用途是在测试期间人为的增加一个程序的并发行。
五十二、线程安全性的文档
一个类为了被多个线程安全的使用,必须在文档中姓储的说明它所支持的线程安全级别。
1,非可变。
2,线程安全的。
3,有条件的线程安全
4,线程兼容的
5,线程对立的。
五十三、避免使用线程组
五十四、谨慎的实现Serializable
五十五、考虑使用自定义的序列化形式
五十六、保护的编写readObject方法
五十七、必要时提供一个readResolve方法

posted on 2007-02-12 22:51 dreamstone 阅读(493) 评论(1)  编辑  收藏 所属分类: jdk相关

评论

# re: Effective Java 46-57[未登录] 2007-02-13 09:54 ant

这个系列的文章,我已收藏了。
谢谢楼主的共享精神。  回复  更多评论   


只有注册用户登录后才能发表评论。


网站导航: