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