1.为什么需要接口

Java中的类只支持单继承,即一个子类只能有一个父类。子类会具有父类的通用特征;

那么,如果我们希望在一个类中能够同时兼容多个不同类型的特征?

如果我们要求,不同的类型在他们无法拥有共同父类的前提下,仍然要包含有相同的特征?

此时,代码应该如何编写?

如:手机,和智能手表都能打电话和发短信,但很难将二者抽取一个公共的父类。因为手机和手表的功能是相互交叉、互有一同的。

但是,手机和手表之间又有相似的行为,由此可以引出接口,通过接口来建立这些相似行为之间的联系。


2.接口实现

接口中的方法,不能有方法体。(注意,这儿没有使用abstract,没有报错)

Java多态六:接口,为什么需要接口;接口的定义;

一个类实现一个接口使用:implements关键字;如下定义的Camera相机类

Java多态六:接口,为什么需要接口;接口的定义;

报错发现:一个类实现一个接口的时候,需要实现接口中的方法。

Java多态六:接口,为什么需要接口;接口的定义;

一个类可以同时继承一个类,和实现接口。如下定义的FourthPhone手机类

Java多态六:接口,为什么需要接口;接口的定义;

测试:

Java多态六:接口,为什么需要接口;接口的定义;

注:如上,IPhoto ip = new FourthPhoto();接口引用指向实现类时,该ip只能调用接口中的方法,而不能调用FourthPhoto()类中自己定义的方法。

即由此可以感觉到,我们可以通过接口来描述不同的类型具有相似的行为特征,从而建立关系之后,以接口引用指向实现类的方式来描述 不同的类型对于接口的行为的具体表现。(即,接口仅倾向于不同类之间的共性

相关文章:

  • 2022-12-23
  • 2021-07-14
  • 2021-11-30
  • 2022-01-18
  • 2022-12-23
  • 2021-07-22
  • 2021-11-03
猜你喜欢
  • 2022-03-09
  • 2021-10-18
  • 2021-05-17
  • 2021-11-22
  • 2021-05-26
  • 2022-12-23
  • 2021-10-18
相关资源
相似解决方案