第七章 抽象类喝接口 三、


三、多重接口                                                    

1.多重接口的基本概念                                                                 

一个类只可以继承一个父类(保持有兄弟关系,同属一族),但可以实现多个接口,而不需要在继承树中同属一个族。一个类实现多个接口就被称为多重接口。

类不可多重继承,因为两个父类的变量或方法可能重复。而接口不会继承变量,即便两个接口方法定义相同,接口中没有方法实现,类中也只有一个方法实现。

    如下图所示:SeaPlane实现了FlyableSailer两个接口,继承了Airplane

 

 

 

接口的多重实现机制从一定程度上弥补了Java类单继承的局限,不但多个无关的类可以实现同一个接口,一个类可以同时实现多个无关的接口。与继承关系类似,接口与其实现类之间存在多态性。如果说继承父类代表着获得一种“家族身份”的话,实现接口则意味着取得了某种“资格”。在java GUIGraphical User Interface,图形用户界面)事件处理中,大量使用了接口,届时读者会对此有更深入的了解。

 

2extendsimplements                                                              

注意extends从句放在implements从句之前,这样一个类既具有自己定义的方法,继承父类方法,同时具有覆盖的接口方法。

 

class Bird extends Animal implements Flyable{

//自己定义

   public void buildNest(){}

   public void layEggs(){}

//继承父类

   public void eat(){}

//覆盖方法

   public void takeOff(){//加速起飞}

   public void land(){//减速着陆}

   public void fly(){//保持引擎运转}

}

 

3.接口多继承                                                                    

事实上,Java的接口是可以实现多继承的,类不允许多继承。如下示例:

public  interface Test extends A,B {

    //定义

}

interface A{

    //定义

}

interface B{

    //定义

}

 

注意:接口自成一些独立的接口继承树,与Java的唯一一颗类继承树(以Object类为数根的继承树)没有关系。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值