软件设计模式及体系结构之迭代器模式

前言

在这里插入图片描述
1.电视机<→存储电视频道的集合<→聚合类
2.电视机遥控器<→操作电视频道<>迭代器
(Iterator)
3.访问一个聚合对象中的元素但又不需要暴露它的内部

分析

1.聚合对象的两个职责
存储数据,聚合对象的基本职责
遍历数据,既是可变化的,又是可分离的
2.将遍历数据的行为从聚合对象中分离出来,封装在迭
代器对象中
3.由迭代器来提供遍历聚合对象内部数据的行为,简化聚合对象的设计,更符合单一职责原则

一.迭代器模式的定义

迭代器模式:提供一种方法顺序访问一个聚合对象中各个元素,且不用暴露该对象的内部表示
通过引入迭代器,客户端无须了解聚合对象的内部结构即可实现对聚合对象中成员的遍历,还可以根据需要很方便地增加新的遍历方式

二.迭代器模式的结构与实现

在这里插入图片描述
迭代器模式包含以下4个角色
Iterator(抽象迭代器)
Concretelterator(具体迭代器)
Aggregate(抽象聚合类)
ConcreteAggregate(具体聚合类)
实现
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三.实例

在这里插入图片描述
在这里插入图片描述

Guess you like

Origin blog.csdn.net/lpblog/article/details/121687288