迭代器模式

迭代器模式

定义

Provide a way to access the elements of an aggregate object sequentially without exposing its underlying representation.

它提供一种访问容器对象中各个元素而又不暴露该对象内部细节的方法;

分析

迭代器模式是一种数据访问方法,同组合模式属于同一类别。

迭代器模式是访问聚合于一个对象中的各个元素的方法,而组合模式则是通过构造树形结构来统一数据访问的方式。

实际上,在基础数据结构中,迭代器模式是很重要的,比如ArrayList、HashMap、Set等集合类,但是在项目中,使用的就比较少了。

虽然,使用的比较少,但是它仍然为我们访问容器所包含的元素提供了一种方法,或者思路:封装内部表示,对外提供统一的遍历方式;

实现

迭代器模式

体现的面向对象程序设计原则

单一职责原则:Container负责聚合元素,而不关心元素的访问方式;

里氏替换原则:Iterator对外提供一致的接口,使得Container与Iterator的实现相解耦;

依赖倒置原则:Container作为高层模块,依赖于Iterator,即抽象模块;

接口隔离原则:Iterator只提供基础的元素获取方法,足够小啦;

迪米特原则:Container只是利用Iterator获得数据访问功能,但是并不关心其具体实现;

开闭原则:Container与Iterator之间是一种松耦合关系。自然可以很方便地扩展。

关注个人微信公众号:落花流水存心阁,不仅能免费获得相关项目的源码,还可以扩展思维,启迪智慧哦~
落花流水存心阁
后台回复:设计模式。获得项目源码~(如果从聚宝盆里获得资源后便狠心离去,那么聚宝盆将因难过而沉睡过去,无法为您提供宝贝了。。。除非唤醒它!)

如果觉得文章写的不错,也可以小小地打赏一下嘛~
也期待合作,“码”上改变~

微信账号支付宝账号
在这里插入图片描述在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值