class A { int bin(A x){ return 1; } } class B extends A { int bin(B x){ return 2; } } class AB{ static A aa = new A(); static B bb = new B(); static A ab = bb; static void print (String s, int r){ System.out.print(s); System.out.println(r); } public static void main (String argv[]) { print ("aa.bin(aa)=",aa.bin(aa)); print ("aa.bin(ab)=",aa.bin(ab)); print ("aa.bin(bb)=",aa.bin(bb)); print ("ab.bin(aa)=",ab.bin(aa)); print ("ab.bin(ab)=",ab.bin(ab)); print ("ab.bin(bb)=",ab.bin(bb)); print ("bb.bin(aa)=",bb.bin(aa)); print ("bb.bin(ab)=",bb.bin(ab)); print ("bb.bin(bb)=",bb.bin(bb)); } } |