posts - 89,  comments - 98,  trackbacks - 0
          轉自Cnblogs.com

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

          [ Program To An Interface, Not An Implementation ]

          接口

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

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

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

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

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

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

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

          實現繼承和接口繼承

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

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

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

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

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

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

          接口的好處

          n???????? 優點:

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

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

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

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

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

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

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

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

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

          接口實例

          該方法是指其它的一些類可以進行交通工具的駕駛,而不必關心其實際上是(汽車,輪船,潛艇或是其它任何實現了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

          搜索

          •  

          積分與排名

          • 積分 - 211643
          • 排名 - 266

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 鄂温| 寿宁县| 宜州市| 忻城县| 抚州市| 靖西县| 汾西县| 雅安市| 怀安县| 游戏| 伊通| 新泰市| 扶沟县| 巴青县| 韶关市| 七台河市| 安泽县| 志丹县| 通江县| 神农架林区| 鄂温| 桃江县| 休宁县| 商洛市| 神农架林区| 额济纳旗| 青海省| 沭阳县| 五华县| 光泽县| 南江县| 阿拉善盟| 漳平市| 宁津县| 固安县| 阿拉善右旗| 株洲县| 河南省| 鄢陵县| 宿迁市| 罗定市|