zoukankan      html  css  js  c++  java
  • 设计模式——Iterator迭代器

    描述:

    迭代器模式提供了一种方法顺序访问一个聚合对象中的各个元素,而又不暴露其内部的表示。 把游走的任务放在迭代器上,而不是聚合上。这样简化了聚合的接口和实现,也让任务各得其所。

    以下程序模拟Java集合中迭代器的实现。

    迭代器类图:

     

    由于ArrayList和LinkedList都是集合类型,所以可以抽象出Connection接口,这样在使用到集合的时候就可以创建Connection的引用,而具体的实现是交给具体的集合类去实现。从而实现了多态。同样为了给集合类型提供迭代器,可以抽象出Iterator接口。在Connection接口中创建得到迭代器的方法。

    首先创建Iterator接口:

    建立Connection接口:

    编写ArrayList实现类:


    编写LinkedList的实现类:


    为了测试方便,编写一个Cat类:

    最后是测试类:





  • 相关阅读:
    T450的Fn lock
    移民,不应该是走投无路后的选择
    门槛低的行业看天赋,门槛高的行业看毅力
    个人是时代的一朵浪花
    转载:XPath基本语法
    爪哇国新游记之三十四----Dom4j的XPath操作
    常去的论坛今天两个传统行业的坛友要下岗了
    异常中要了解的Throwable类中的几个方法
    感觉JVM的默认异常处理不够好,既然不好那我们就自己来处理异常呗!那么如何自己处理异常呢?
    JVM对异常的默认处理方案
  • 原文地址:https://www.cnblogs.com/lcqBlogs/p/2392365.html
Copyright © 2011-2022 走看看