java:抽象类与接口的姻缘

阅读前请先阅读前面的两篇文章
继承的目的及缺陷
继承与抽象类的关系

interface 使抽象类向前更进了一层。abstract关键字可以在类中创建一个或者多个抽象方法,这些抽象方法没有具体实现,而这些方法的实现是由此类的继承者来创建。以上抽象类的特征就可以引出关键字"interface"了。因为interface定义的类是一个完全抽象的的类,它根本没有实现任何方法,而抽象类实现了部分方法。

接口只提供形式,而未提供任何具体实现。接口是用来建立类与类之间的协议

接口的性质:接口不仅仅是一个极度抽象类,它还可以创建一个能被向上转型为多种基类的类型,来实现变种的特性。

接口协议样例

image.png

从Woodwind和Brass可以看到,只要实现了接口就变成了一个普通的类,就可以按照常规方式拓展。他们中的方法 paly what不管你在前面加不加public修饰,它都必须是public访问权限。改为其他访问权限编译器就会报错。再向上转型为Instrument接口时,都不会有问题。它的行为都是相同的。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,769评论 18 399
  • 一、抽象类 1、抽象类含义的概括: 当多个类出现相同功能时,但功能主体不同,这样可以向上抽取,抽取时只抽取功能定义...
    玉圣阅读 848评论 0 6
  • 你很清楚的知道什么时候用抽象类,什么时候用接口么?p.s. 多文字预警! 1 抽象类和接口简介 1.1 抽象类 ...
    Sharember阅读 2,379评论 9 55
  • 港岛汽水_阅读 265评论 0 0
  • 时光的针线 绣呀绣 将零散的小苞绣成花“绣球” 又将花绣球绣得通体红 这通体红的“绣球” 为世界奉献过它的最美时刻...
    悠然云舒阅读 195评论 2 0