一模式定義
迭代器模式,提供了一種模式順序訪問一個集合對象中各個元素的功能,而又不暴露其內(nèi)部的表示。
二模式舉例
1模式分析
我們借用訪問人員列表這一案例來說明這一模式。
2迭代器模式靜態(tài)類圖
3代碼示例
3.1 人員信息接口——IPerson
3.2 人員信息實現(xiàn)——Person
3.3 人員集合接口——IPersonList
3.4 人員集合實現(xiàn)——PersonList
3.5 迭代器接口——Iterator
3.6 迭代器實現(xiàn)——ArrPersonIterator
3.7 讓迭代器遍歷集合對象——Client
4運行結(jié)果
----使用迭代器輸出人員信息 start......
姓名:人員0 - 年齡:28 - 性別:女
姓名:人員1 - 年齡:25 - 性別:女
姓名:人員2 - 年齡:23 - 性別:女
姓名:人員3 - 年齡:18 - 性別:女
姓名:人員4 - 年齡:27 - 性別:女
姓名:人員5 - 年齡:28 - 性別:男
姓名:人員6 - 年齡:25 - 性別:女
姓名:人員7 - 年齡:23 - 性別:女
姓名:人員8 - 年齡:16 - 性別:男
姓名:人員9 - 年齡:12 - 性別:女
----使用迭代器輸出人員信息 end......
三該模式設(shè)計原則
1"開一閉"原則
2單一職責原則
四使用場合
1訪問一個集合對象的內(nèi)容,而無須暴露它的內(nèi)部表示。
2支持對集合對象的多種遍歷方式。
3為遍歷不同的集合對象結(jié)構(gòu)提供一個統(tǒng)一的接口。
五迭代器模式靜態(tài)類圖