1. interface A { void x(); }2. class B implements A { public void x() {} public void y() {} }3. class C extends B { public void x() {} }And:4. java.util.List < A > list = new java.util.ArrayList < A > ();5. list.add(new B());6. list.add(new C());7. for (A a : list) {8.   a.x();9.   a.y();10. }