请问15行代码中aa.i为什么不能用obj.i代替呢,obj不是已经强制转换成子类引用了吗?
class B {
public int i;
public B(int i) {
this.i = i;
}
public boolean equals(Object obj) {
B aa = (B) obj;
if (this.i == aa.i) //15行
return true;
else
return false;
}
}
public class Equals_2 {
public static void main(String[] args) {
B aa1 = new B(2);
B aa2 = new B(2);
System.out.println(aa1.equals(aa2)); //输出结果为true
}
}