合成聚合原則

2022-08-27 03:54:08 字數 1007 閱讀 2502

合成/聚合復用原則是在乙個新的物件裡面使用一些已有的物件,使之成為新物件的一部分;新的物件通過向這些物件的委派達到復用已有功能的目的

概括:要盡量使用合成/聚合,盡量不要使用繼承。

1)在物件導向設計中,可以通過兩種基本方法在不同的環境中復用已有的設計和實現,即通過組合/聚合關係或通過繼承。

繼承復用:實現簡單,易於擴充套件。破壞系統的封裝性;從基類繼承而來的實現是靜態的,不可能在執行時發生改變,沒有足夠的靈活性;只能在有限的環境中使用。(「白箱」復用)

組合/聚合復用:耦合度相對較低,選擇性地呼叫成員物件的操作;可以在執行時動態進行。(「黑箱」復用)

2)組合/聚合可以使系統更加靈活,類與類之間的耦合度降低,乙個類的變化對其他類造成的影響相對較少,因此一般首選使用組合/聚合來實現復用;其次才考慮繼承,在使用繼承時,需要嚴格遵循黎克特制代換原則,有效使用繼承會有助於對問題的理解,降低複雜度,而濫用繼承反而會增加系統構建和維護的難度以及系統的複雜度,因此需要慎重使用繼承復用。

3)此原則和黎克特制代換原則氏相輔相成的,兩者都是具體實現"開-閉"原則的規範。違反這一原則,就無法實現"開-閉"原則

1.合成(組合):表示乙個整體與部分的關係,指乙個依託整體而存在的關係(整體與部分不可以分開)

2.聚合:聚合是比合成關係更弱的一種擁有關係,也表示整體與部分的關係(整體與部分可以分開)

{參考:

合成 聚合復用原則

一 合成 聚合復用原則 盡量使用合成 聚合,盡量不要使用類繼承 二 什麼是合成?合成表示一種強的擁有關係,體現了嚴格的部分和整體的關係,部分和整體的生命週期一樣,打個比方 人有兩個胳膊,胳膊和人就是部分和整體的關係,人去世了,那麼胳膊也就沒用了,也就是說胳膊和人的生命週期是相同的 合成關係用實心的菱...

合成 聚合復用原則CARP

1 在乙個新的物件裡面使用一些已有的物件,使之成為新物件的一部分,新物件通過向這些物件的委派達到復用已有功能的目的。在物件導向設計裡,不同環境中復用已有設計和實現的基本方法 繼承 合成 聚合。2 繼承復用 通過擴充套件乙個已有物件的實現來得到新的功能,基類明顯地捕獲共同的屬性和方法,而子類通過增加新...

設計模式原則 合成 聚合復用原則(四)

閱讀目錄 一 合成 聚合復用原則 二 什麼是合成?三 什麼是聚合?四 為什麼盡量不要使用類繼承而使用合成 聚合?五 合成 聚合復用原則結構圖 一 合成 聚合復用原則 盡量使用合成 聚合,盡量不要使用類繼承 二 什麼是合成?合成表示一種強的擁有關係,體現了嚴格的部分和整體的關係,部分和整體的生命週期一...