Java接口入门全部知识总结

父类中定义了相关子类中的共同行为。 接口可以用于定义类的共同行为(包括非相关的类)。
下面对接口的基础知识进行了比较全面的总结

1.何为接口

接口是一种与类相似的结构,只包含常量和抽象方法。

接口在许多方面都与抽象类很相似,但是它的目的是指明相关或者不相关类的多个对象的共同行为。而抽象类和其子类必然是紧密相关的。
接口只包含常量和抽象方法,从某种程度上讲,接口也可以说成是抽象类的一种特例。

2.接口怎么定义?

为了区分接口和类,Java采用下面的语法来定义接口:


修饰符 interface 接口名{
常量声明
方法签名
}


下面是一个接口的例子:

modifier interface InterfaceName {
/** Constant declarations */
/** Abstract method signatures */
}

说明:

  1. 由于接口中所有的数据域都是public static final ;而且所有的方法都是public abstract,所以Java允许忽略这些修饰符。因此,下面的接口定义是等价的:
    在这里插入图片描述
  2. 接口的使用和抽象类的使用基本类似,但是,定义一个接口与定义一个抽象类有所不 同。下图总结了这些不同点:
    在这里插入图片描述

3.接口怎么用?

几点说明

  1. 在Java中,接口被看作是一种特殊的类。就像常规类一样,每个接口都被编译为独立的字节码文件。
  2. 使用接口或多或少有点像使用抽象类。例如,可以使用接口作为引用变量的数据类型或类型转换的结果等。
  3. 与抽象类相似,不能使用new操作符创建接口的实例。

具体用法:

  • 使用关键字:implements
  • 基本语法:class ClassName implements interface{}

其他注意事项:
个类可以实现多个接口,但是只能继承一个父类。

4.接口的继承关系

类和接口之间的关系称为接口继承。因为接口继承和类继承本质上是相同的,所以我们将它们都简称为继承。

Java只允许为类的扩展做单一继承,但是允许使用接扣做多重扩展。 例如:在这里插入图片描述
利用关键字extends, 接口可以继承其他接口。这样的接口称为子接口(subinterface)。例 如,在下面代码中,NewInterface是Interface1, …,InterfaceN的子接口。:
在这里插入图片描述
一个实现Newlnterface的类必须实现在Newlnterface, Interfacel, …,InterfaceN 中定义的抽象方法。接口可以扩展其他接口而不是类。 一个类可以扩展它的父类同时实现多个接口。

画UML图时:接口名字和方法名字使用斜体。虛线和空心三角形用于指向接口,如下所示:
在这里插入图片描述

所有的类共享同一个根类Object, 但是接口没有共同的根。与类相似,接口也可以定义一种类型。一个接口类型的变量可以引用任何实现该接口的类的实例。如果一个类实现了一个接口,那么这个接口就类似于该类的一个父类。可以将接口当作一种数据类型使用,将接口类型的变量转换为它的子类,反过来也可以。

5.接口设计指南及其优点

在这里插入图片描述
接口比类拥有更多的灵活性,因为不用使所有东西都属于同一个类型的类。

友情链接——纯干货
Java面向对象,这些你一定想再来复习复习:

  1. Java继承入门全部知识归纳总结
  2. Java多态基础知识完整的归纳总结
  3. Java抽象类和抽象方法归纳总结
  4. Java可见性修饰符public/private/protected的归纳总结
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值