网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > VB.net > 正文
Design Patterns:Iterator Pattern--VB代码
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/15
下载{$ArticleTitle}原创论文样式
;Item Implements IAbstractIterator.First
        current = 0
        Return TryCast(collection(current), Item)
    End Function

    Public Function [Next]() As Item Implements IAbstractIterator.[Next]
        current += m_step
        If Not IsDone Then
            Return TryCast(collection(current), Item)
        Else
            Return Nothing
        End If
    End Function

    '' Properties
    Public Property [Step]() As Integer
        Get
            Return m_step
        End Get
        Set(ByVal value As Integer)
            m_step = value
        End Set
    End Property

    Public ReadOnly Property CurrentItem() As Item Implements IAbstractIterator.CurrentItem
        Get
            Return TryCast(collection(current), Item)
        End Get
    End Property

    Public ReadOnly Property IsDone() As Boolean Implements IAbstractIterator.IsDone
        Get
            Return current >= collection.Count
        End Get
    End Property
End Class

 

Iterator Pattern模式的几个要点:
   1、迭代抽象:访问一个聚合对象的内容而无需暴露它的内部信息。
   2、迭代多态:为遍历不同的集合结构提供一个统一的接口,从而支持同样的算法在不同的集合结构上进行操作。
   3、迭代器健壮性考虑:遍历的同时更改迭代器所在的集合结构,会导致问题

我的理解

封装集合对象的内部结构和遍历集合的算法,支持集合和算法的变化。

参考资料
《C#面向对象设计模式纵横谈系列课程(18)》     李建中老师

  • 上一篇资讯: 用VB.Net编织未来
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号