目录
1.3 Chain of Responsibility模式中的角色
1. Chain of Responsibility模式
1.1 作用
针对一个请求(问题), 将多个对象组成一组责任链, 然后按照它们在责任链上的顺序一个一个地找出到底谁应该来负责处理. 使用责任链模式可以弱化"请求方"和"处理方"之间的关联关系(不再是问题和处理之间一对一的关系), 让双方各自都成为可独立复用的组件. 此外, 程序还可以应对其他需求, 根据情况不同, 负责处理的对象也会发生变化.
1.2 示例程序
1.2.1 示例程序类图
1.2.2 Trouble类
//表示发生的问题的类
public class Trouble {
private int number;//问题编号
public Trouble(int number) {//生成问题
this.number = number;
}
public int getNumber() {
return number;
}
@Override
public String toString() {
return "[Trouble" + number + "]";
}
}
1.2.2 Support抽象类
//解决问题的抽象类
public abstract class Support {
private String name;//解决问题的实例的名字
private Support next;//要推卸的对象,下一个处理问题的实例
public Support(String nam