public boolean equals(Object obj) {
if (obj instanceof Point) {
Point pt = (Point)obj;
return (x == pt.x) && (y == pt.y);
}
return super.equals(obj);
}在point中有 equals这一方法,上边是该方法的源代码,“return super.equals(obj)”这句看不懂,super调用父类的equals方法,再重新比较?还请达人们不吝赐教,详解一下!
if (obj instanceof Point) {
Point pt = (Point)obj;
return (x == pt.x) && (y == pt.y);
}
return super.equals(obj);
}在point中有 equals这一方法,上边是该方法的源代码,“return super.equals(obj)”这句看不懂,super调用父类的equals方法,再重新比较?还请达人们不吝赐教,详解一下!
if (obj instanceof Point) { //如果传入的obj是Point类型
Point pt = (Point)obj; //将obj转赋给局部变量pt(为了安全)
return (x == pt.x) && (y == pt.y); //判断这两个x,y和新传入的坐标是否相等,如果相等则返回真,否则返回假
}
return super.equals(obj); //如果obj不是Point 类型的,则直接交给父类进行处理
}