软设之迭代器模式

设计模式中迭代器模式的意图是:提供一种方法顺序访问一个聚合对象中各个元素,而又不需要暴露该对象的内部表示。

打个比方,图书馆里的书籍就是聚合对象中的元素,读者借书不需要知道书怎么摆放的,只需要找图书管理员借书就可以了。图书管理员就是具体迭代器。

组成:

Iterotor:迭代器,迭代器定义访问和遍历元素的接口

Concretelterator:具体迭代器,实现迭代器的接口,在遍历时跟踪当前聚合对象中的位置。

Aggregate:聚合,定义一个创建迭代器对象的接口

ConcreteAggregate:具体聚合,实现创建迭代器对象,返回一个具体迭代器的实例。

相关推荐
幂简集成explinks17 小时前
e签宝签署API更新实战:新增 signType 与 FDA 合规参数配置
后端·设计模式·开源
_落纸20 小时前
三大基础无源电子元件——电阻(R)、电感(L)、电容(C)
笔记
Alice-YUE21 小时前
【CSS学习笔记3】css特性
前端·css·笔记·html
2303_Alpha21 小时前
SpringBoot
笔记·学习
大飞pkz21 小时前
【设计模式】C#反射实现抽象工厂模式
设计模式·c#·抽象工厂模式·c#反射·c#反射实现抽象工厂模式
努力也学不会java21 小时前
【设计模式】抽象工厂模式
java·设计模式·oracle·抽象工厂模式
青草地溪水旁21 小时前
设计模式(C++)详解—抽象工厂模式 (Abstract Factory)(2)
c++·设计模式·抽象工厂模式
青草地溪水旁21 小时前
设计模式(C++)详解—抽象工厂模式 (Abstract Factory)(1)
c++·设计模式·抽象工厂模式
Hello_Embed1 天前
STM32HAL 快速入门(二十):UART 中断改进 —— 环形缓冲区解决数据丢失
笔记·stm32·单片机·学习·嵌入式软件
咸甜适中1 天前
rust语言 (1.88) 学习笔记:客户端和服务器端同在一个项目中
笔记·学习·rust