Java语言规范要求equals方法应具有的特性
2008-05-30 10:15
761 查看
1.自反性:对于任何非空引用x,x.equals(x)应该返回true。
2.对称性:对于任何引用x和y,如果x.equals(y)返回true,那么y.equals(x)也应该返回true。
3.传递性:对于任何引用x、y和z,如果x.equals(y)返回true,y.equals(z)返回true,那么x.equals(z)也应该返回true。
4.一致性:如果x和y引用的对象没有发生变化,那么反复调用x.equals(y)应该返回同样的结果。
5.对于任意非空引用x,x.equals(null)应该返回false。
2.对称性:对于任何引用x和y,如果x.equals(y)返回true,那么y.equals(x)也应该返回true。
3.传递性:对于任何引用x、y和z,如果x.equals(y)返回true,y.equals(z)返回true,那么x.equals(z)也应该返回true。
4.一致性:如果x和y引用的对象没有发生变化,那么反复调用x.equals(y)应该返回同样的结果。
5.对于任意非空引用x,x.equals(null)应该返回false。
相关文章推荐
- Java语言规范要求equals方法具有的特性以及实现方式
- java语言规范要求equals方法具有下面的特性
- java中equals()方法应该具有的特性
- javaSE_8系列博客——Java语言的特性(三)--类和对象(11)--从方法返回值
- javaSE_8系列博客——Java语言的特性(三)--类和对象(5)--定义方法
- java通过封装编写Book类。要求:类具有属性书名、书号、主编、出版社、出版时间、页数、价格,其中页数不能少于200页,否则输出错误信息,并强制赋默认值200;为各属性设置赋值和取值方法;具有方法d
- Java equals方法编写规范 —— 牢记这5条军规
- C# 3.0语言新特性(语言规范):1 具有隐式类型的局部变量
- Java equals方法特性
- 【Java语言特性】编程规范每日一学--20130912
- C# 3.0语言新特性(语言规范):2 扩展方法
- javaSE_8系列博客——Java语言的特性(三)--类和对象(7)--给方法或者构造器传输信息
- javaSE_8系列博客——Java语言的特性(三)--类和对象(20)--嵌套类(Lambda 表达式--VS--方法引用)
- 覆盖equals方法的技巧和要求(effective java总结)
- Effective Java Item8-在覆盖equals(Object类的nonfinal方法)时遵循接口规范
- Java语言中,包名、类名、接口名、方法名、变量名,以及常量名的命名有何规范的命名习惯
- Java语言中,以String作为类型的变量在作为方法参数时所表现出的“非对象”的特性。
- jdk7 新特性-Java语言的动态性-脚本语言支持api-方法调用05
- C# 3.0语言新特性(语言规范):6 具有隐式类型的数组
- C# 3.0语言新特性(语言规范):6 具有隐式类型的数组