Java基础之接口

女生的网名这么多〃 提交于 2020-03-02 07:39:11

上文链接:Java基础之继承

在上篇文章中我们讲到Java语言的继承是单一继承,一个子类只能有一个父类。这种继承关系存在局限性,那么Java中是否存在机制,可以处理这种局限性呢?答案当然是肯定的,这种机制就是-------接口。

接口:

接口(interface)是一个比较抽象类还抽象的类,接口中的所有方法都是抽象方法,接口和类之间的关系是实现(implements

格式:

interface 接口名{

}
接口的成员特点:
  • 只能有抽象方法
  • 只能且默认使用public&abstract修饰方法
  • 默认使用public static final 来修饰成员变量

注意:

  • 注意接口不能创建对象,即不能实例化
  • 类与接口的关系是实现关系,一个类实现一个接口必须实现它所有的方法

接口和类之间的各种关系:

  • 类与类:继承关系,单一继承,多层继承
  • 类与接口:实现关系
  • 接口与接口:继承关系(多继承)
interface interA{
      public abstract void method();
}

interface interB{
      public abstract void method();
}

interface interC extends interB{
      public abstract void method();
}

class Test implements interA,interB{
       @Override
       public void method(){
       
       }
}
接口的优点:
  • 类与接口的关系,实现关系,而且是多实现,一个类可以实现多个接口,类与类之间是继承关系,Java中的继承是单一继承,一个类只能由一个父类,打破了继承的局限性
  • 对外提供规则(USB接口)
  • 降低了程序的耦合性(可以实现模块化开发,定义好规则,每个实现自己的模块,提高了开发效率)
接口和抽象类的区别:

共性:不断地抽取出抽象的概念
区别:

1、与类之间的关系

  • 类与接口是实现关系,而且是多实现,一个类可以实现多个接口
  • 类与抽象类是继承关系,Java中的继承是单一继承,一个类只能有一个父类,Java中的继承是多层继承

2、成员

  • 成员变量:抽象类可以有成员变量,也可以有常量,而接口只能有常量。(常量即赋值的变量)
  • 成员方法:抽象类可以有抽象方法,可以有非抽象方法;接口只能有抽象方法,而且方法有默认修饰符public abstract
  • 构造方法:抽象类有构造方法,接口无
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!