我比其他继任者更喜欢您的收藏理念。它使操作这组处理程序变得简单明了:collections接口是众所周知的,每个人都知道如何遍历List或不进行迭代。
如果您使用朋友建议的这种后继方式,请注意不要陷入非常深层次的递归中(除非您的平台支持尾部调用,否则我不知道JVM是否能够做到这一点)。
我不建议向集合中添加任何方法。您将获得更加复杂的设计,难以理解和修改。有两个单独的问题:存储一组处理程序,并将此处理程序解释为责任链。通过对集合进行迭代来处理请求的方法比集合内务管理方法具有更高的抽象级别,因此不应属于集合接口。



