接口主要是用來描述這個(gè)系統(tǒng)有些什么功能,應(yīng)該怎么調(diào)用這些功能,是更高的一
層抽象。主要是用來表現(xiàn)給外界看。同時(shí)接口比較穩(wěn)定,不能隨便變來變?nèi)ァR驗(yàn)槟阋?br />
變,對于外界來說你的表現(xiàn)就變了。接口對于系統(tǒng)來說,相當(dāng)于一個(gè)規(guī)范的描述,感覺
有點(diǎn)像虛擬機(jī)規(guī)范之于虛擬機(jī)。接口對于編程人員來說,相當(dāng)于幫你隱藏了一些東西,
這寫隱藏(如何實(shí)現(xiàn))的東西,你不需要去關(guān)注。
抽象類,在語法上的區(qū)別,你也說了。實(shí)際上抽象類也可以部分的實(shí)現(xiàn)接口的功能
,即描述一些東西給外界看。抽象類更像一個(gè)系統(tǒng)的骨架,里面有一些基本的需要共享
的代碼。和一些已經(jīng)實(shí)現(xiàn)好的方法。想想,如果全都用接口代替抽象類的話,那么我們
底下子類的編寫就需要編寫大量的代碼。而這些子類,本可以實(shí)現(xiàn)代碼和屬性的共享的
。所以抽象類,更多的是一個(gè)對內(nèi)的東西。
可以說接口是比抽象類更抽象的一個(gè)東西。接口和抽象類關(guān)注的地方不一樣。當(dāng)然
從邏輯上來看,他們的區(qū)別不是那么的明顯。但是從用法上來看,他們還是有比較大的
區(qū)別。
寫的有點(diǎn)亂...