posts - 89,  comments - 98,  trackbacks - 0
          轉(zhuǎn)自Cnblogs.com

          法則2:針對接口編程,而非(接口的)實現(xiàn)

          [ Program To An Interface, Not An Implementation ]

          接口

          n???????? 接口是一個對象在對其它的對象進行調(diào)用時所知道的方法集合。

          n???????? 一個對象可以有多個接口(實際上,接口是對象所有方法的一個子集)

          n???????? 類型是對象的一個特定的接口。

          n???????? 不同的對象可以具有相同的類型,而且一個對象可以具有多個不同的類型。

          n???????? 一個對象僅能通過其接口才會被其它對象所了解。

          n???????? 某種意義上,接口是以一種非常局限的方式,將“是一種”表達為“一種支持該接口的”。

          n???????? 接口是實現(xiàn)插件化(pluggability)的關(guān)鍵

          實現(xiàn)繼承和接口繼承

          n???????? 實現(xiàn)繼承類繼承):一個對象的實現(xiàn)是根據(jù)另一個對象的實現(xiàn)來定義的。

          n???????? 接口繼承子類型化):描述了一個對象可在什么時候被用來替代另一個對象。

          n???????? C++的繼承機制既指類繼承,又指接口繼承。

          n???????? C++通過繼承純虛類來實現(xiàn)接口繼承。

          n???????? Java對接口繼承具有單獨的語言構(gòu)造方式-Java接口。

          n???????? Java接口構(gòu)造方式更加易于表達和實現(xiàn)那些專注于對象接口的設計。

          接口的好處

          n???????? 優(yōu)點:

          F??????? Client不必知道其使用對象的具體所屬類。

          F??????? 一個對象可以很容易地被(實現(xiàn)了相同接口的)的另一個對象所替換。

          F??????? 對象間的連接不必硬綁定(hardwire)到一個具體類的對象上,因此增加了靈活性。

          F??????? 松散藕合(loosens coupling)。

          F??????? 增加了重用的可能性。

          F??????? 提高了(對象)組合的機率,因為被包含對象可以是任何實現(xiàn)了一個指定接口的類。

          n???????? 缺點:

          F??????? 設計的復雜性略有增加

          (譯者注:接口表示“”(LikeA)的關(guān)系,繼承表示“”(IsA)的關(guān)系,組合表示“”(HasA)的關(guān)系。)

          接口實例

          該方法是指其它的一些類可以進行交通工具的駕駛,而不必關(guān)心其實際上是(汽車,輪船,潛艇或是其它任何實現(xiàn)了IManeuverabre的對象)。

          posted on 2006-08-02 15:22 水煮三國 閱讀(447) 評論(0)  編輯  收藏 所屬分類: J2SE
          <2006年8月>
          303112345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          常用鏈接

          留言簿(4)

          隨筆分類(85)

          隨筆檔案(89)

          文章分類(14)

          文章檔案(42)

          收藏夾(37)

          java

          oracle

          Sybase

          搜索

          •  

          積分與排名

          • 積分 - 211649
          • 排名 - 266

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 江津市| 土默特右旗| 林州市| 永和县| 宁化县| 金坛市| 海晏县| 分宜县| 玉屏| 遵义县| 沙洋县| 洪江市| 互助| 新田县| 保德县| 深水埗区| 新疆| 台南县| 宁德市| 灵武市| 邮箱| 九龙县| 和龙市| 永福县| 中卫市| 垫江县| 泸州市| 瑞丽市| 隆林| 微山县| 陆良县| 湾仔区| 阿拉尔市| 南京市| 东丰县| 左贡县| 徐汇区| 黔南| 法库县| 永清县| 呼伦贝尔市|