合成/聚合复用原则
合成/聚合復用原則
? ? ? ? ? 合成/聚合復用原則:盡量使用合成/聚合,盡量不要使用類繼承。
? ? ? ? ? 對象使用繼承的缺點和限制:
? ? ? ? ??對象的繼承關系是在編譯時就定義好了,所以無法在運行時改變從父類繼承的實現,子類的實現與它的父類有非常緊密的依賴關系,以至于父類實現中的任何變化必然會導致子類發生變化,當你需要復用子類時,如果繼承下來的實現不適合解決新的問題,則父類必須重寫或被其他更適合的類替換,這種依賴關系限制了靈活性并最終限制了復用性。
? ? ? ? ??合成和聚合都是關聯的特殊種類。
? ? ? ? ??聚合表示一種弱的擁有關系,體現的是A對象可以包含B對象,但B對象不是A對象的一部分。
? ? ? ? ??合成則是一種強的擁有關系,體現了嚴格的部分和整體的關系,部分和整體的生命周期一樣。
? ? ? ? ??合成/聚合復用原則的優點:
? ? ? ? ??優先使用對象的合成/聚合將有助于你保持每個類被封裝,并被集中在單個任務上,這樣類和類繼承層次會保持較小規模,并且不太可能增長為不可控制的龐然大物。
?
總結