1.Object的equals方法?
equals在非空对象的引用上实现了等值关系:
(1)自反性:x.equals(x),值为true。
(2)相称性:x.equals(y),值为true;y.equals(x),值为true。
(3)传递性:x.equals(y),值为true;y.equals(z),值为true;x.equals(z),值为true。
(4)一致性:x.equals(y),值为true;多次调用后,值还是true。
(5)x.equals(null),值为false。
注:重载此方法,一般应同时重载hashCode方法。这样做的目的是维护hashCode方法的公共约定;值相等的对象,hashCode也相同。
2.Object的hashCode方法?
返回对象的hash值。这个方法为Hashtable提供支持。
hashCode的公共约定:
(1)Java应用程序的执行过程中,多次调用同一对象的hashCode方法,返回的值应该相同。该对象的equals方法被修改后,此值不受影响。应用程序的两次执行过程中,不需要维护这个值的一致性。
(2)如果两个对象通过equals方法比较,为true。则分别调用两个对象的hashCode方法,应该返回相同的整数值。
(3)对下列情况不做要求。如果两个对象通过equals方法比较不相等,分别调用两个对象的hashCode方法,必须制造出不同的整数值。无论如何,程序员应该注意到,两个不同的对象拥有不同的hashCode值,可以改善Hashtable的性能。
分享到:
相关推荐
java-object类java-object类java-object类java-object类java-object类java-object类java-object类java-object类java-object类java-object类
介绍java-object-diff是一个简单但功能强大的库,用于查找Java对象之间的差异。 它需要两个对象并生成一个树形结构,该结构表示对象及其子对象之间的任何差异。 然后可以遍历此树以提取更多信息或将更改应用于基础...
java-object-mapper-benchmark, Java对象到对象映射框架的JMH基准 Object-to-object映射框架微模块多层应用程序通常需要在不同对象模型之间进行映射( 比如 。 ipqos和实体。写这样的锅炉板映射代码是一个令人烦恼和...
object-oriented-programming-using-java
The primary strength of Object-Oriented Design Using Java is that it has one of the best presentations of problem solving using patterns available. It has received rave reviews from instructors and ...
小实例-实现对成绩总分由高到低的排序-Java中数组对象的排序
PDman导出word文档报错
1,创建一个复数类complex,以复数进行数学运算 2....编程定义一个接口,实现三个数中求最小值和最大值的方法,并将程序存放在mymaths包中 4.修改5.7.2案例1中的部分设计:①设计和实现Clipher类的一个子类,它实现如下...
mysql-connector-java-8.0.22.jar
适用于Java的Oracle Cloud Infrastructure SDK关于oci-java-sdk提供了适用于Java的SDK,可用于管理Oracle Cloud Infrastructure资源。 该项目是开源的,由Oracle Corp.维护。该项目的主页。安装有关基本设置,请参阅...
Android-objectbox-java.zip,objectbox是用于对象的超高速轻量级数据库,安卓系统是谷歌在2008年设计和制造的。操作系统主要写在爪哇,C和C 的核心组件。它是在linux内核之上构建的,具有安全性优势。
对象存储服务 OBS 对象存储服务(Object Storage Service)是一款稳定、安全、高效、易用的云存储服务,具备标准Restful API接口,可存储任意数量和形式的非结构化数据
Monitor-Object设计模式入手-探索Java同步机制-二.ppt
object-oriented.programming.and.Java
计算机后端-Java-Java核心基础-第14章 面向对象06 19. Object类综合练习.avi
计算机后端-Java-Java核心基础-第12章 面向对象04 23. Object类的理解.avi
Learn Java programming concepts to design automation testing frameworks Java is one of the most ...Obtain knowledge of Java object-oriented programming (OOP) concepts with practical implementations
计算机后端-Java-Java核心基础-第14章 面向对象06 11. Object类结构的剖析.avi
Data Structures And Algorithms With Object-oriented Design Patterns In Java.chm