首页 > 代码库 > 第十一讲:面向对象编程(六)
第十一讲:面向对象编程(六)
玉不琢,不成器;人不学,不知道。 ——礼记·学记
本讲内容:接口
Java中只支持单继承,即一个类只能有一个父类。为了提供类似多重继承的功能,Java提供了接口(Interface)机制。但接口不仅仅是为了解决多重继承问题才出现的。接口拥有多重继承的好处,而且没有多重继承的缺点---多重继承的缺点全部来源于实现全部继承,关键在于接口只有abstract(默认、不用写)方法和常量。
譬如下面例子:有些动物和不能和人亲近玩耍的,不能继承。
<span style="font-size:18px;">class Animal{ public void eat() { System.out.println("吃"); } public void sleep() { System.out.println("睡"); } } interface Pet{ void play(); } class Tiget extends Animal{} class Cat extends Animal implements Pet{ public void play() { System.out.println("猫是可以亲近玩耍的"); } } public class danmei { public static void main(String[] args) { Cat a=new Cat(); a.eat(); a.sleep(); a.play(); } }</span>
运行的结果是:
吃 睡 猫是可以亲近玩耍的
注意:
1、接口名用 interface 修饰, 相对应的 类名用 class修饰
2、接口里定义的方法都是抽象方法,可以用abstract修饰,当然也可以不用它修饰
3、接口只能被实现 ( implements )
4、可以用抽象类实现接口,也就是说虽然实现了,但是没有真正写接口的任何方法,它把责任推给了抽象类的子类
5、普通类实现接口,则必须按照接口的契约,实现接口所定义的所有方法。
6、接口可以继承接口。
7、一个接口可以继承多个父类,也就是说一个接口之间可以多重继承。
第十一讲:面向对象编程(六)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。