关于java类equals重写

public boolean equals(Object obj)
{
if (this == obj)
{
return true;
}
if (obj != null &&
obj.getClass() == Employee.class)
{
Employee employee = (Employee)obj;
return this.getName().equals(employee.getName())
&& this.getPass().equals(employee.getPass());
}
return false;
}最后返回的是什么,返回false和true代表什么

1.当两个对象引用同一个对象时返回true;
2.当另一个对象是Employee类实例时,它的getName()方法和getPass()方法返回值相同时返回true,否则返回false;
3.其它情况一律返回false;
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-10-12
例如:String b1="abc";
String b2="abc";
String b3="ab";
b1.equals(b2); 其返回值为true,说明这两个字符串完全相等
b1.equals(b3); 其返回值为false,说明这两个字符串不相等
第2个回答  2011-10-12
equals重写是为了用来比较2个对象是否相等的方法。TRUE表示同一个对象,false表示不是同一个对象。在JAVA中都用对象.equals(对象)来进行比较,equals方法一般都要自己重写。
第3个回答  2011-10-12
equal方法和==的区别
前者是比较两者内容是否相同(比较的是内存中堆的内容);
后者是比较两者是否是同一对象(比较的是内存中栈的内容)