匿名内部类只针对重写一个方法时候使用

xiaoxiao2021-02-27  311

class nameno{ public static void main(String[] args) { Outer o = new Outer(); o.method(); } } interface Inter { public void show1(); public void show2(); } class Outer { public void method() { //匿名类多个重写方法调用 new Inter(){ public void show1() { System.out.println("show1"); } public void show2() { System.out.println("show2"); } }.show1(); new Inter(){ public void show1() { System.out.println("show1"); } public void show2() { System.out.println("show2"); } }.show2(); //匿名内部类只针对重写一个方法时候使用 //父类引用指向子类对象 Inter i = new Inter(){ public void show1() { System.out.println("show1"); } public void show2() { System.out.println("show2"); } /*public void show3() { System.out.println("show3"); }*/ }; i.show1(); i.show2(); //i.show3();//编译看父类。运行看子类,匿名内部类是不能向下转型的,因为没有子类类名 } }

转载请注明原文地址: https://www.6miu.com/read-5833.html

最新回复(0)