设计模式学习笔记——Chain of Responsibility职责链模式

重点在链。一条链,如果本节点处理不了,则传递给下一个节点处理。

这里写图片描述

关键是如何传给下一个节点?

主要是由本节点决定传给哪一个节点。

public class Client
{
    public static void main(String args[])
    {
        Leader objDirector,objManager,objGeneralManager,objViceGeneralManager;

        //构造节点实例
        objDirector=new Director("王明");
        objManager=new Manager("赵强");
        objGeneralManager=new GeneralManager("李波");
        objViceGeneralManager=new ViceGeneralManager("肖红");

        //设置下一个节点是谁
        objDirector.setSuccessor(objManager);
        objManager.setSuccessor(objViceGeneralManager);
        objViceGeneralManager.setSuccessor(objGeneralManager);

        LeaveRequest lr1=new LeaveRequest("张三",2);
        objDirector.handleRequest(lr1);

        LeaveRequest lr2=new LeaveRequest("李四",5);
        objDirector.handleRequest(lr2);

        LeaveRequest lr3=new LeaveRequest("王五",15);
        objDirector.handleRequest(lr3);

        LeaveRequest lr4=new LeaveRequest("赵六",45);
        objDirector.handleRequest(lr4);         
    }
}

posted on 2017-02-05 15:25  左直拳  阅读(114)  评论(0编辑  收藏  举报

导航