重写Object类的equals方法和Objects类的equals方法

重写Object类的equals方法

重写equals方法的要求:

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。

在JavaBean中,经常会覆写equals方法,从而根据实际业务情况来判断两个对象是否相等,比如我们写一个person类,根据姓名来判断两个person类实例对象是否相等。

 

 在equals方法里加上是否为null值的判断:

 

 现在我们有一个Employee类继承自person类:

Objects类的equals方法

使用Objects类中的equals方法来比较两个对象。

posted @ 2022-07-05 19:27  肥宅快乐水~  阅读(39)  评论(0)    收藏  举报