interface A { void display(String s); } interface B { void display(int i); } class C1 implements A { public void display(String s) { System.out.println( "C1: " + s ); } } class C11 extends C1 implements B { public void display(int i) { System.out.println( "C11: " + i ); } } class C12 extends C1 implements B { public void display(int i) { System.out.println( "C12: " + i ); } } class C2 implements A { public void display(String s) { System.out.println( "C2: " + s ); } } class IRV { public static void main(String args[]) { A a; B b; a = new C1(); a.display( "String 1" ); a = new C2(); a.display( "String 2" ); a = new C11(); b = new C11(); a.display( "String 11" ); b.display(5); a = new C12(); b = new C12(); a.display( "String 12" ); b.display(10); } }