public class A {
public String show(D obj) {
return ("A and D" );
}
public String show(A obj) {
return ("A and A" );
}
}
public class B extends A {
public String show(B obj) {
return ("B and B");
}
public String show(A obj) {
return ("B and A");
}
}
public class C extends B {}
public class D extends B {}
A a1=new A();
A a2=new B();
B b=new B();
C c=new C();
D d=new D();
public class Test {
public static void main(String[] args) {
A a2 = new B();
B b = new B();
System.out.println(a2.show(b));
}
}