Java面向对象:接口

接口

接口是功能的集合,同样可看做是一种数据类型,是比抽象类更为抽象的类 。

接口只描述所应该具备的方法,并没有具体实现,具体的实现由接口的实现类(相当于接口的子类)来完成。这样将功能的定义与实现分离,优化了程序设计。

  1. 一方面,有时必须从几个类中派生出一个子类,继承它们所有的属性和方法。但是,Java不支持多重继承。有了接口,就可以得到多重继承的效果。
  2. 另一方面,有时必须从几个类中抽取出一些共同的行为特征,而它们之间又没有is-a的关系,仅仅是具有相同的行为特征而已。
  3. 接口就是规范,定义的是一组规则。继承是一个"是不是"的关系,而接口实现则是 "能不能" 的关系。
  4. 接口的本质是契约,标准,规范。

举例

接口实例1

接口实例2

接口(interface)是抽象方法和常量值定义的集合。
接口的特点:

  1. 用interface来定义。
  2. 接口中的所有成员变量都默认是由public static final修饰的。
  3. 接口中的所有抽象方法都默认是由public abstract修饰的。
  4. 接口中没有构造器。
  5. 接口采用多继承机制。

interface Animal {
    public static final int NUM = 10;
    String KINGDOM = "Animal Kingdom";

    public abstract void eat();
}

class Cat implements Animal {

    public void eat() {
        System.out.println("The cat is eating");
    }

}

public class Example {
    public static void main(String[] args) {

        System.out.println(Animal.NUM);
        System.out.println(Animal.KINGDOM);

        Animal a = new Cat();
        a.eat();
    }
}

接口规范

  • 定义Java类的语法格式:先写extends,后写implements
    class SubClass extends SuperClass implements InterfaceA{ } 
    
  • 一个类可以实现多个接口,接口也可以继承其它接口。
  • 实现接口的类中必须提供接口中所有方法的具体实现内容,方可实例化。否则,仍为抽象类。
  • 接口的主要用途就是被实现类实现。(面向接口编程)
  • 与继承关系类似,接口与实现类之间存在多态性
  • 接口和类是并列关系,或者可以理解为一种特殊的类。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 接口的由来 抽象类中可以定义抽象方法的 。当一个抽象类中的方法全是抽象的。这时,可以通过另一种特殊的形式来体现。 ...
    码农随想录阅读 1,274评论 0 0
  • 面向对象 面向对象的三个特点:封装:把数据封装起来,不让外面随便访问,如身份证号get/setter多态:同一件事...
    陈小飘阅读 2,738评论 0 1
  • java继承 继承的概念 继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类。 继承就是子类继...
    863cda997e42阅读 3,947评论 0 1
  • 一.Java 接口: 1.接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,...
    少帅yangjie阅读 793评论 0 1
  • 1 面向对象No6 面向对象 OO Object Oriented 编程时以对象为单元,封装数据和逻辑,以此提...
    征程_Journey阅读 4,895评论 0 2