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