27.2 匿名内部类应用场景

/*
* 匿名内部类的应用场景:
* 作为参数进行传递
*
*
*/

package day27_内部类.匿名内部类.匿名内部类应用;

public class InnerDemo5 {
    public static void main(String[] args) {
//        method(new Dog());
//        method(new Cat());
        method(new Animal() { //直接使用匿名对象作为参数使用,
            @Override
            public void eat() {
                System.out.println("1");
            }
        });

//        Animal a = new Cat();
//        a.eat();
    }

    public static void method(Animal a) {
        a.eat();
    }
}

interface Animal {
    public void eat();
}

//class Cat implements Animal {
//
//    @Override
//    public void eat() {
//        System.out.println("1");
//    }
//}
//
//class Dog implements Animal {
//
//    @Override
//    public void eat() {
//        System.out.println("2");
//    }
//}

输出

 

posted @ 2019-07-25 12:27  龙桑  阅读(498)  评论(0编辑  收藏  举报