|
1. 创建一个至少有一个方法的接口。在某个方法内定义一个内部类,以实现此接口,这个方法返回此接口的引用。 2. 重复练习1,但将内部类定义在某个方法的一个作用域内。 (可以参看上一次的) 3. 重复练习2,这次使用匿名内部类。 4. 修改HorrorShow.java,用匿名类实现DangerousMonster和Vampire。 interface Monster { void menace(); } interface DangerousMonster extends Monster { void destroy(); } interface Lethal { void kill(); } class DragonZilla implements DangerousMonster { public void menace() {} public void destroy() {} } interface Vampire extends DangerousMonster, Lethal { void drinkBlood(); } class VeryBadVampire implements Vampire { public void menace() {} public void destroy() {} public void kill() {} public void drinkBlood() {} } public class HorrorShow { static void u(Monster b) { b.menace(); } static void v(DangerousMonster d) { d.menace(); d.destroy(); } static void w(Lethal l) { l.kill(); } public static void main(String[] args) { DangerousMonster barney = new DragonZilla(); u(barney); v(barney); Vampire vlad = new VeryBadVampire(); u(vlad); v(vlad); w(vlad); } }
|