ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 第七章抽象类和接口 三、

第七章抽象类和接口 三、

原创 Linux操作系统 作者:今天天气好晴朗 时间:2012-02-07 16:01:29 0 删除 编辑

 

三、多重接口                                                    

1.多重接口的基本概念                                                                

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

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

    如下图所示:SeaPlane实现了Flyable和Sailer两个接口,继承了Airplane类第七章抽象类和接口 三、 - 少爷 - 叶少

 

 

 

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

 

2.extends和implements                                                              

注意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类为数根的继承树)没有关系。

Java私塾跟我学系列——JAVA  网址:http://www.javass.cn  电话:010-68434236

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26660100/viewspace-715759/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2012-02-02

  • 博文量
    65
  • 访问量
    44165