class A {
public String show(A obj) {
return ("A and A");
}
}
class B extends A {
public String show(B obj) {
return ("B and B");
}
public String show(A obj) {
return ("B and A");
}
}
public class OverrideTest {
public static void main(String[] args) {
A a2 = new B();
B b = new B();
String res = a2.show(b);
System.out.println(res); // 感觉应该输出 B and B,实际输出 B and A
}
}