UML类图:
实例实现代码:
abstract class Aggregate
{
public abstract Iterator CreateIterator();
}
class ConcreteAggregate : Aggregate
{
private IList items = ne...
分类:
其他好文 时间:
2015-05-05 16:40:55
阅读次数:
137
在软件构建过程中,集合对象内部结构常常变化各异。但对于这些集合对象,我们希望在不暴露其内部结构的同时,可以让外部客户代码透明地访问其中包含的元素;同时这种“透明遍历”也为“ 同一种算法在多种集合对象上进行操作”提供了可能。使用面向对象技术将这种遍历机制抽象为“迭代器对象”为“应对变化中的集合对象”提供了一种优雅的方法。...
分类:
其他好文 时间:
2015-05-05 10:39:55
阅读次数:
133
//---------------------------15/04/26----------------------------
//Iterator 迭代器模式----对象行为型模式
/*
1:意图:
提供一种方法顺序访问一个聚合对象中各个元素,而又不需暴露该对象的内部表示。
2:别名:
...
分类:
其他好文 时间:
2015-04-27 09:47:30
阅读次数:
145
在GOF的《设计模式:可复用面向对象软件的基础》一书中对迭代器模式是这样说的:提供一种方法顺序访问一个聚合对象中各个元素,而又不需要暴露该对象的内部表示。类图和实例:迭代器模式由以下角色组成:1.迭代器角色(Iterator):迭代器角色负责定义访问和遍历元素的接口。2.具体迭代器角色(Concre...
分类:
其他好文 时间:
2015-04-24 12:31:12
阅读次数:
141
JAVA设计模式设计模式分类JAVA设计模式可根据创建型模式、结构型模式、行为型模式分为三大类:
创建型模式
单例模式、工厂模式、抽象工厂模式、
建造者模式、原型模式结构型模式
适配器模式、桥接模式、装饰模式、
组合模式、外观模式、享元模式、代理模式行为型模式
模版方式模式、命令模式、迭代器模式、观察者模式、
中介者模式、备忘录模式、解释器模式、状态模式、...
分类:
编程语言 时间:
2015-04-21 01:50:13
阅读次数:
202
场景: -- 提供一种可以遍历聚合对象的方式。 又称为:游标cursor模式 -- 聚合对象:存储数据 -- 迭代器:遍历数据代码:package com.lp.iterator;//自定义的迭代器接口public interface MyIterator { void first();...
分类:
其他好文 时间:
2015-04-20 14:38:07
阅读次数:
136
1.迭代器模式(IteratorMode) 定义:迭代器模式就是顺序访问聚集中的对象,一般来说,集合中非常常。 既有两个对象:一是聚集对象:需要遍历的对象。二是迭代器对象:用于对聚集对象进行遍历访问 关系图: 2.例子 2.1 集合//集合接口:获取,长度方法public inte...
分类:
编程语言 时间:
2015-04-20 12:57:37
阅读次数:
150
??
迭代器模式
场景:
提供一种可以遍历聚合对象的方式。又称为游标cursor模式
聚合对象:存储数据
迭代器模式:遍历数据
聚集抽象类 Aggregate
Iterator
迭代抽象类,用于定义得到开始对象,得到下一个对象,判断是否...
分类:
其他好文 时间:
2015-04-12 09:17:01
阅读次数:
165
迭代器模式 定义参考 wiki:Iterator pattern 迭代器模式就是分离了集合对象的遍历行为,抽象出一个迭代器类来负责,这样既可以做到不暴露集合的内部结构,又可让外部代码透明地访问集合内部的数据。 ------- 节选自 《大话设计模式》P207 我们可以将迭代器模式抽离出几个...
分类:
Web程序 时间:
2015-04-11 06:32:08
阅读次数:
181
今天的PHP设计模式系列的主角是迭代器(Iterator)模式,迭代器模式提供了抽象:位于对象图不明部分的一组对象(或标量)集合上的迭代。迭代器(Iterator)模式,它在一个很常见的过程上提供了一个抽象:位于对象图不明部分的一组对象(或标量)集合上的迭代。迭代有几种不同的具体执行方法:在数组属性...
分类:
Web程序 时间:
2015-04-11 01:15:11
阅读次数:
209