重写equals()方法
eclipse中可在source中选择
public class EqualsTest {
int id;
String name;
@Override
public boolean equals(Object obj) {
if (this == obj) //两个引用指向同一个对象例 EqualsTest e3 = e2;System.out.println(e2.equals(e3));
return true;
if (obj == null) //引用为空
return false;
if (getClass() != obj.getClass())//字节码不同,也就是说两个类名称不同,两个类没有关系,
return false;
EqualsTest other = (EqualsTest) obj;//把obj向下转型
if (id != other.id) //剩下就是比较两个对象里的内容
return false;
if (name == null) {
if (other.name != null)
return false;
} else if (!name.equals(other.name))
return false;
return true;
}
public static void main(String[] args) {
EqualsTest e1 = new EqualsTest();
EqualsTest e2 = new EqualsTest();
System.out.println(e2.equals(e1));
}
}