設計模式8

2021-08-25 15:09:43 字數 753 閱讀 4066

15、

迭代器模式

迭代器模式(iterator

),提供一種方法順序訪問乙個聚合物件中個元素,而又不暴露該物件的內部表示。 a)

優點:

i.迭代器模式分離了集合物件的遍歷行為,抽象出乙個迭代器類來負責,這樣既可以做到不暴露集合的內部結構,又可讓外部**透明地訪問集合內部的資料。

ii.支援對聚合物件的多種遍歷。

iii.

為遍歷不同的聚集結構提供統一介面。 b)

迭代器模式的應用: i.

當需要訪問乙個聚集物件,而且不管這些物件是什麼都需要遍歷的時候,就應該考慮用迭代器模式。

ii.需要對聚集有多種方式遍歷時,可以考慮使用迭代器模式。(為遍歷不同的聚集結構提供如開始、下乙個、是否結束、當前哪一項等統一的介面)

16、單例模式

單例模式(singleton

),保證乙個類僅有乙個例項,並提供乙個訪問它的全域性訪問點。 a)

優點:

i.單例模式可以讓類自身儲存它唯一的例項。

ii.單例模式因為singleton

類封裝它的唯一例項,這樣它可以嚴格地控制客戶怎樣訪問它以及何時訪問它。 b)

單例模式的應用: i.

單例模式可以控制資源的使用,通過執行緒同步來控制資源的併發訪問。

ii.單例模式控制例項產生的數量,達到節約資源的目的。

iii.

作為通訊媒介使用,也就是資料共享,它可以在不建立直接關聯的條件下,讓多個不相關的兩個執行緒或者程序之間實現通訊。

設計模式8 外觀模式

為子系統中的一組介面提供乙個一致的介面,此模式定義了乙個高層介面,這個介面使得這個子系統更加容易使用。public class subsystemone public class subsystemtwo public class subsystemthree public class subsys...

設計模式 8 外觀模式

定義 為子系統中的一組介面提供乙個一致的介面,此模式定義了乙個高層介面,這個介面使得子系統更加容易使用。使用場景 當子系統的介面過於複雜時,比如經典的三層架構,就需要考慮在資料訪問層和業務邏輯層,業務邏輯層和表示層的層與層之間建立外觀。以達到簡化目的,降低耦合 實現 建立外觀類,聚合子系統各個介面,...

設計模式 8 模板模式

今天我來全面總結一下android開發中最常用的設計模式 模板方法模式。模板方法模式.jpg 1.1 定義 定義乙個模板結構,將具體內容延遲到子類去實現。1.2 主要作用 在不改變模板結構的前提下在子類中重新定義模板中的內容。模板方法模式是基於 繼承 的 1.3 解決的問題 2.1 uml類圖 組成...