JAVA Iterator 設計模式

2021-07-23 15:18:47 字數 393 閱讀 9974

1. 為什麼要用iterator模式

**和集合本身是緊耦合,

無法將訪問邏輯從集合類和客戶端**中分離出來,

每一種集合對應一種遍歷方法,客戶端**無法復用。

2.iterator的優缺點

1.訪問乙個聚合物件的內容而無需暴露它的內部表示。

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

3.為遍歷不同的聚合結構提供乙個統一的介面(即, 支援多型迭代)。

1. 簡單,通用

對於hash表也可方便遍歷

2. 方便

既有正序遍歷,可有倒序,方便使用

3. 封裝性良好

各種集合遍歷方法相同,內部封裝不需關心

缺點:對簡單集合略複雜

3. iterator的實現案例

Enterprise Library設計模式

在軟體架構和開發中,模式是發生在給定的環境的確定問題的描述,和基於主導力 guiding forces 集合,提出乙個解決方案。解決方案通常是乙個簡單的機制,因為它是二個或我個類 物件 服務 程序 執行緒 元件或節點的組合,這些在一起工作以解決底層架構或開發挑戰。模式是對於開發和架構而言是非常有用的...

Guarded Suspension設計模式

guarded suspension 設計模式可以保證,當執行緒在訪問某個物件時,發現條件不滿足,就掛起等待條件滿足時再次訪問 public class guardedsuspensionqueue catch interruptedexception e 插入元素並且喚醒take執行緒 queue...

設計模式 Abstract Factory模式

還是乙個創造型模式,可以簡單的認為,創造型模式就是對使用者使用new的乙個封裝,封裝作為物件導向乙個重要的特性,它絕對不是一對大括號那麼簡單,他重要的是封裝變化點.如果沒有變化,那就別封裝吧,直接讓使用者new吧,這樣效率是最高的,但因為會有變化,所以才會有物件導向和設計模式.抽象工廠是應對這樣的一...