Java语言规范要求equals方法具有的特性以及实现方式
2010-08-04 17:42
866 查看
equals方法应具有的特性:
(1)自反性:对于任何非空引用,x.equals(x)应该返回true;
(2)对称性:对于任何引用x和y,当且仅当y.equals(x)返回true,x.equals(y)也应该返回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。
(1)自反性:对于任何非空引用,x.equals(x)应该返回true;
(2)对称性:对于任何引用x和y,当且仅当y.equals(x)返回true,x.equals(y)也应该返回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语言中,包名、类名、接口名、方法名、变量名,以及常量名的命名有何规范的命名习惯
- java实现多线程的方式以及run方法和start方法的区别
- Java语言中,包名、类名、接口名、方法名、变量名,以及常量名的命名有何规范的命名习惯
- java中equals()方法应该具有的特性
- java中创建String类型对象的两种方式以及在使用equals()和“==”两种方法时的区别
- JAVAWEB开发之Servlet3.0新特性的使用以及注解的详细使用和自定义注解的方法、动态代理的使用、利用动态代理实现细粒度的权限控制以及类加载和泛型反射
- java语言基础(5)——进制,进制转换以及不同进制的数据的书写方式
- java实现二叉树的构建以及3种遍历方法
- Java实现二叉树的构建以及3种遍历方法
- Java中==、equals、hashcode的区别与重写equals以及hashcode方法实例(转)
- Java解决在浏览器地址栏中输入url访问action的问题以及拦截方法过滤的简易实现
- 队列的链式存储方式的实现(Java语言描述)
- 为什么要重写java中对象的equals方法和hashCode方法以及如何重写
- java 实现WebService 以及不同的调用方式
- Java中用反射的方式获取类中的所有属性和方法,以及获取属性的默认值,设置属性的默认值
- java 实现WebService 以及不同的调用方式
- JAVA单线程以及java多线程的实现方式
- Java学习笔记之Object类以及equals()方法