架构与设计模式
文章平均质量分 71
tfcoder
程序员
展开
-
覆盖equals时总要覆盖hashCode
在重新equals方法时为啥要重写hashCode方法? 重写的原则是:两个对象根据equals方法相等,则两个对象hashCode产生同样的整数结 果。 其实重写hashCode方法是为了保证一些基于散列的集合能正常工作,这样集合包括 (HahsMap,HashSet,HashTable)。因为此类集合是利用hash算法与equals来区分对象的等同性。比如:对类 Test重写了eq...原创 2015-03-03 19:30:52 · 96 阅读 · 0 评论 -
单件模式多线程环境下实现
参考《Head First 设计模式》 单件模式 定义:确保一个类只有一个实例,并提供一个全局的访问点。 单件模式如果没有做同步处理,在多线程环境下很容易造成出现多个实例情况。一下三种实现方式可以解决这个问题。 实现一: public class Singleton { private static Singleton uniqueInstance; // oth...原创 2015-03-26 19:03:59 · 349 阅读 · 0 评论