閱讀前請先閱讀前面的兩篇文章
繼承的目的及缺陷
繼承與抽象類的關(guān)系
interface 使抽象類向前更進了一層。abstract關(guān)鍵字可以在類中創(chuàng)建一個或者多個抽象方法,這些抽象方法沒有具體實現(xiàn),而這些方法的實現(xiàn)是由此類的繼承者來創(chuàng)建。以上抽象類的特征就可以引出關(guān)鍵字"interface"了。因為interface定義的類是一個完全抽象的的類,它根本沒有實現(xiàn)任何方法,而抽象類實現(xiàn)了部分方法。
接口只提供形式,而未提供任何具體實現(xiàn)。接口是用來建立類與類之間的協(xié)議
接口的性質(zhì):接口不僅僅是一個極度抽象類,它還可以創(chuàng)建一個能被向上轉(zhuǎn)型為多種基類的類型,來實現(xiàn)變種的特性。
接口協(xié)議樣例

image.png
從Woodwind和Brass可以看到,只要實現(xiàn)了接口就變成了一個普通的類,就可以按照常規(guī)方式拓展。他們中的方法 paly what不管你在前面加不加public修飾,它都必須是public訪問權(quán)限。改為其他訪問權(quán)限編譯器就會報錯。再向上轉(zhuǎn)型為Instrument接口時,都不會有問題。它的行為都是相同的。