微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

迭代实现接口的类列表的设计模式

如何解决迭代实现接口的类列表的设计模式

我有一个验证类列表,这些验证类实现了一个注入到服务中以验证请求 Object 的接口,如果我遍历这个列表并调用每个验证类的方法,这是什么类型的模式?所有的验证类都验证了一些东西

  • 是某种连锁模式吗?

谢谢

解决方法

没有。假设你有一个班级委员会

@Service
public class Council {
  @Inject
  private Councillor[] council;
  public boolean getConsensus(Act purpose) {
    for(Councillor member: council) {
      if (member.vetoes(purpose)) {
        return false;
      }
    }
    return true;
  }
}

这是不是链式的,因为元素对其链式邻居不承担任何责任。这里有一个堆栈跟踪,它在循环中的每次否决调用之后返回到方法 getConsensus 的完全相同的执行。

但是连锁模式将执行从议员委托给议员,并让堆栈跟踪增长,每个议员都有一条跟踪线。如果您有 200 名议员,您的堆栈跟踪将大 200 个跟踪。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。