鏘鏘三人行20100211的節(jié)目《天不生孔子 萬古如今》。其中提到一段話,大致意思是:
抽象的東西無論在哪個時代、哪個地點都可以適用。比如說:做好人,忠孝仁義……從古到今、古今中外都可以通用,放之四海皆準的道理。
這很好的解釋了,面向對象編程中,為什么要有接口、抽象類。
我們知道,使用接口最吸引人的原因之一就是同一個接口具有多個不同的具體實現(xiàn)。抽象類也是這樣。在簡單的情況中,他的體現(xiàn)形式通常是一個接受接口(抽象類)類型的方法,而該接口(抽象類)的實現(xiàn)和向該方法傳遞的對象則取決于方法的使用者。
換句話也就是說,我們在定義了一個好人的接口,該接口中有:忠孝仁義……等等行為道德的方法。那么在時代變遷的時候,我們只需重寫一個實現(xiàn)好人這一接口的類。這樣就不用更改原先實現(xiàn)的業(yè)務邏輯。
----------------------------------------------------------------------
PS:使用接口的好處
1、根據(jù)向上轉型,通過RTTI(
Runtime Type Information),代碼也符合開發(fā)-封閉原則(軟件實體應該是可擴展,不可修改的)
2、他能夠統(tǒng)一命名規(guī)范,比如Animals類都有一個eat()的方法,如果在Pig里命名eat(),而到了Cat里命名其他的方法,就會顯的雜亂無章,使用接口則能約束,方法命名。即不按接口約束命名編譯不會通過。
posted on 2010-02-17 04:02
myProMark 閱讀(234)
評論(0) 編輯 收藏 所屬分類:
個人感悟