`
冰加盐
  • 浏览: 46759 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

改写equals的时候请遵循通用约定

 
阅读更多

改写equals的时候请遵循通用约定:

1.自反性(reflexive)。对于任意的引用值x,x.equals(x)一定为ture;

2.对称性(symmetric).对于任意的应用值 x和y,当且仅当y.equals(x)返回true时,x.equals(y)也一定返回true;

3.传递性(transitive).对于任意的引用值x,y,z.如果x.equals(y)返回true,并且y.equals(z)也返回true,那么x.equals(z)也一定返回true;

4.一致性(consistent).对于任意的引用值x和y,如果用于equals比较的对象信息没有被修改的话,那么,多次调用x.equals(y)要么一致返回true,要么一致返回false。

5.对于任意的非空引用值x。x.equals(null)一定返回false。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics