JAVA:类的equals方法覆写

equals方法覆写##

equals方法是Object超类的一个方法,由于超类是所以类的父类,自定义类均可覆写equals方法。
equals方法覆写步骤

1.判断this与obj是否引用同一个对象

if(this == obj) return true;

2.判断obj是否为null

if(obj == null) return false;

3.判断this与obj是否属于同一类

if(this.getClass() != obj.getClass()) return false;

*4.将obj转换为相应的类类型

ClassName other = (ClassName) obj;

5.判断域(域)是否相同,基本数据类型使用==,对象域使用equals方法比较

return (field1 == other.field1 && field2.equals(other.feld2));

代码

@Override 
public boolean equals(Object obj) {
  if (this == obj) return true;//检测this与obj是否引用同一个对象 
  if (obj == null) return false; //检测obj是否为null,如果为null,则返回false 
  if (this.getClass() != obj.getClass()) return false; //检测this与obj是否属于同一个类,这里使用getClass()方法取得类 
  Student other = (Student) obj; //强制将obj转换为Student类
 //判断student的字段是否相等 
  return (field1 == other.field1 && field2.equals(other.feld2)); 
}

你可能感兴趣的:(JAVA:类的equals方法覆写)