问答详情
源自:10-5 Java 中的接口

接口这节的匿名内部类和我所知道的匿名内部类一点都不一样,那些汉字代表匿名类?

如题;么弄懂

提问者:病病娇娘丶 2016-02-06 13:10

个回答

  • 梁柳添
    2016-04-25 09:12:15

    第三种方法有点小问题,

    new Tiger(){

    public void eat(){

    system.out.println("老虎要吃肉了“);}

    }.eat();

    这样才对,同学

  • 张大福
    2016-02-06 21:29:37

    举例子,总结一下接口的应用。

    Animal是一个接口,定义了抽象方法eat()。

    http://img.mukewang.com/56b5f0c400015bf904300107.jpg


    1.面向对象有三个特点:多态 、继承、封装。接口也体现了多态。父接口可以指向实现此接口的具体对象。

    定义一个Tiger类用来实现Animal接口以及接口中的eat()方法,使用的时候,可以用Animal接口实例化tiger。

    http://img.mukewang.com/56b5f1dd00019e7705080203.jpg


    http://img.mukewang.com/56b5f1340001b37103640165.jpg

    2.匿名内部类的应用,可以直接在实例化的同时实现接口的方法。

    tiger类中可以不在eat中写具体的实现方式(当然写了也没关系)

    56b5f36e0001d2e004120162.jpg

    在实例化tiger对象的同时,覆写了eat()方法。

    56b5f36e0001436704970246.jpg

    3.可以直接实例化具体的对象,不需要创建对象的引用。这个方式可以直接调用对象的相应方法。

    http://img.mukewang.com/56b5f4cb0001b67804050201.jpg

    接口的匿名类使用方法,我根据老师讲的总结了一下,分为了以上3类。java新手,说得不对请指证,期待大家来交流。