请问一下下边的java代码,我有点不明白的是equals方法里的else判断,既然obj 已经instanceof Demo了,那 为何还用Demo d=(Demo)obj;进行强转成Demo类型,直接省掉这一句不行吗?另外我想请教一下:如果Demo有父类的话,是不是父类也instanceof Demo?
class Demo{
private int number;
public Demo(int number) {
super();
this.number = number;
}
public boolean equals(Object obj){
if(!(obj instanceof Demo)){
return false;
}
else{
Demo d=(Demo)obj;
return this.number==d.number;
}
}
}
|