JAVA职责链模式
通过本文将学习到
Table of Contents
前言
今天写了个小脚本,感觉还挺有意思的!写程序就是要写点自己觉得好玩的东西么。不然,写出来都没有一点成就感。还有今天庆祝WJ小姐姐可以溜了,还是挺好的。业务小姐姐教了我很多!接下来的日子不会这么轻松了。再有今天看了一部电影闪灵,这部电影最大得感受就是想要让人灭亡得先让他疯狂!
话不多说,职责链是一个行为型得设计模式在系统中如果存在多个对象可以处理一个客户端请求时,可以将相关的对象连成一条链来经行对请求的处理,其中一家如果能处理则直接处理否则交由给下一家。
1、职责链模式的概念
职责链模式:避免将一个请求的发送者和请求的处理者耦合在一起,让多个对象都有处理请求的机会。将接受请求的对象连成一条线链并且沿着这条链传递请求,直到有一个对象能够处理它为止。
在我得工作中,就有这种类似的例子。比如工作流,当我进行一个单据的提交,首先我要交给我得业务部组长审批,然后是部门经理,然后是财务经理。然后财务经理就批准成功给我发钱。在这个过程中我只需要将我的请求发送给我的部门组长,然后由它帮我进行审批,和传递。而我就只要等待最后的结果。
简单来说,职责链模式就是将发送请求者,和请求接受者进行了解耦。我(请求发送者)不必,自己将每一个给请求发送给请求接受者们(我得各个上级).
2、职责链的UML图
1、Handle()、抽象处理类在类中定义了一个success的属性,抽象的处理方法。success是对下家的引用,因为不同的接受对象处理方法不同所以用抽象方法设计处理方法。通过对下个处理对象的引用行出了一条链。
2