面向对象第十七课,接口详解

来源:互联网 发布:手机淘宝可以交电费吗 编辑:程序博客网 时间:2024/04/29 02:29

接口就是实现和设计的分离,是最抽象的

为什么需要接口?接口和抽象类的区别?

  1. 接口就是比“抽象类”还“抽象”的“抽象类”。可以更加规范的对子类进行约束。全面地专业地实现了:规范和具体实现的分离。
  2. 接口就是规范,定义的是一组规则,提现了显示世界种“如果你是什么什么,就必须能什么什么”的思想(如果你是天使,就必须能飞。如果你是汽车,就必须能跑。如果你是好人,就必须干掉坏人)
  3. 接口的本质是契约,就像我们人间的法律一样。制定好后打架都遵守。
  4. 项目的具体需求是多变的,我们必须以不变应万变才能从容开发,此处的“不变”就是“规范”。因此,我们开发项目往往都是面向接口编程。
  5. 子类通过implements来实现接口中的规范,一个类可以实现多个接口
  6. 接口不能创建实例,但是可用于声明引用变量类型。
  7. 一个类实现了接口,必须实现接口中所有的方法,并且这些方法只能是public的。
  8. 接口支持多继承,接口A可以继承接口B、C
package com.pkushutong.oop.testInterface;/** * 接口测试 * @author dell * */public interface Flyable {int MAX_SEEPD = 11000;int MIN_SEEPD = 1;void fly();}/** * 可以定义多个接口 * @author dell * */interface attack{void att();}class Man implements Flyable{@Overridepublic void fly() {// TODO Auto-generated method stubSystem.out.println("男人跳起来,飞");}}/** * 一个类可以实现多个接口 * @author dell * */class Stone implements Flyable,attack {@Overridepublic void fly() {// TODO Auto-generated method stubSystem.out.println("被人扔出去飞");}@Overridepublic void att() {// TODO Auto-generated method stubSystem.out.println("石头可以攻击");}}


0 0
原创粉丝点击