当前位置: 首页 > wzjs >正文

用dw建设网站娱乐公司网站建站背景介绍

用dw建设网站,娱乐公司网站建站背景介绍,多媒体网站开发实验报告,网站营销网站优化行为型设计模式之Chain of Responsibility(责任链) 摘要: 责任链模式是一种行为型设计模式,允许请求沿着处理链传递,直到被某个对象处理。该模式由Handler抽象类定义处理接口,ConcreteHandler具体实现处理…

行为型设计模式之Chain of Responsibility(责任链)

摘要:
责任链模式是一种行为型设计模式,允许请求沿着处理链传递,直到被某个对象处理。该模式由Handler抽象类定义处理接口,ConcreteHandler具体实现处理逻辑,每个处理者决定处理请求或传递给下个处理者。适用于多个对象可处理请求、请求接收者不明确或需动态指定处理集合的场景。示例代码展示了请假审批链,从小组长到部门经理逐级审批,体现了责任链的动态处理机制。

1)意图

使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。

2)结构

在这里插入图片描述
其中;

  • Handle 定义一个处理请求的接口;(可选)实现后继链。
  • ConcreHandler 处理它所负责的请求;可访问它的后继者;如果可处理该请求,就处理它,否则将该请求转发给后继者。
  • Client 向链上具体处理着 (ConcreHandler)对象提交请求。

3)适用性

Chain of Responsibility 模式适用于以下条件:

  • 有多个的对象可以处理一个请求,哪个对象处理该请求运行时刻自动确定。
  • 想在 不明确指定接收者的情况下向多个对象中的一个提交一个请求。
  • 可处理一个请求的对象集合应被动态的指定。

代码:

/*** @author psd 行为型设计模式之责任链模式*/
public class ChainOfResponsibilityPatternDemo {public static void main(String[] args) {Handler groupLeader = new GroupLeader();Handler projectManager = new ProjectManager();Handler departmentManager = new DepartmentManager();groupLeader.setNext(projectManager);projectManager.setNext(departmentManager);groupLeader.handleRequest(41);}
}abstract class Handler {/*** 下一个处理者*/protected Handler nextHandler;public void setNext(Handler nextHandler) {this.nextHandler = nextHandler;}/*** 请求的个数* * @param request*            请求处理*/public abstract void handleRequest(int request);
}/*** 小组长*/
class GroupLeader extends Handler {@Overridepublic void handleRequest(int request) {if (request <= 3) {System.out.println("小组长处理了请求" + request);} else {if (nextHandler != null) {nextHandler.handleRequest(request);} else {System.out.println("无法审批...");}}}
}/*** 项目经理*/
class ProjectManager extends Handler {@Overridepublic void handleRequest(int request) {if (request <= 5) {System.out.println("项目经理处理了请求:" + request);} else {if (nextHandler != null) {nextHandler.handleRequest(request);} else {System.out.println("无法审批...");}}}
}/*** 部门经理*/
class DepartmentManager extends Handler {@Overridepublic void handleRequest(int request) {if (request <= 10) {System.out.println("部门领导处理了请求:" + request);} else {if (nextHandler != null) {nextHandler.handleRequest(request);} else {System.out.println("无法审批...");}}}
}

喜欢我的文章记得点个在看,或者点赞,持续更新中ing…


文章转载自:

http://JUiD1iw8.Ljzgf.cn
http://LsTZAGRD.Ljzgf.cn
http://Eq5LxaDj.Ljzgf.cn
http://cE2ug2NC.Ljzgf.cn
http://TohGdKPu.Ljzgf.cn
http://V4OC7TLM.Ljzgf.cn
http://bpnj2AiS.Ljzgf.cn
http://pQCrzzdA.Ljzgf.cn
http://w5PVqQxU.Ljzgf.cn
http://0ZmMmPWm.Ljzgf.cn
http://0E9yRqCZ.Ljzgf.cn
http://3qtlUDXh.Ljzgf.cn
http://pW8KZnpK.Ljzgf.cn
http://1CnrNpgw.Ljzgf.cn
http://u5NPoloQ.Ljzgf.cn
http://lkLHmQLA.Ljzgf.cn
http://6fK9Qv4P.Ljzgf.cn
http://0KC7xIld.Ljzgf.cn
http://61MySmzz.Ljzgf.cn
http://tRHN8pjy.Ljzgf.cn
http://fqrjLn4N.Ljzgf.cn
http://m6t0jpBR.Ljzgf.cn
http://xCt3zBQF.Ljzgf.cn
http://xCbarSHz.Ljzgf.cn
http://uCEWnAXl.Ljzgf.cn
http://9XyVUCge.Ljzgf.cn
http://ERAVmC4w.Ljzgf.cn
http://gqyWeePr.Ljzgf.cn
http://QakfPi86.Ljzgf.cn
http://2z3DoAik.Ljzgf.cn
http://www.dtcms.com/wzjs/734379.html

相关文章:

  • 公司有必要建设网站吗科普重庆网站
  • 网站百度关键词排名软件查询网ip138子域名
  • 前端做的网站网站建设栏目结构表
  • iis添加网站的物理路径2016企业网站建设合同
  • 怎么在电脑上做网站注册公司都需要什么材料
  • 公司招聘一个网站建设来做推广如何办好公司网站
  • 南平摩托车罚款建设网站缴费谷歌浏览器安卓版下载
  • 互联网做网站建设网站都要学些什么问题
  • 怎样做商城网站的推广企业网站建设报价明细表
  • 服装厂家东莞网站建设网站如何做问卷调查报告
  • 建设网站成本动漫设计专业就业方向
  • 苏州网站建设哪家更好成都高端网页开发公司
  • 商城网站建设解决方案怎样做网站的子网
  • 网站开发人员是干什么的网站开发三层结构
  • 网站营销的流程商场设计平面图
  • 在县城做同城网站怎么样镇江网站制作哪家便宜
  • 建立网站图片青海网站建设公司哪家好
  • 重庆江津网站设计公司哪家好建设机械网站精英
  • 兰州网站建设哪家好清远网站建设公司
  • 小程序开发公司seo专业实战培训
  • 网站建设必须买数据库么wordpress加上特效
  • 辽宁网站推广的目的wordpress无插件对接公众号
  • 手机网站appwordpress购物车功能
  • 青岛网上房地产网官网网络优化工程师证
  • 怎么做企业招聘网站找专业公司做网站
  • 搜索引擎作弊的网站有哪些鼓楼网站seo搜索引擎优化
  • 精品资料网官方网站seo类目链接优化
  • 想做网站制作运营注册什么公司核实php网站开发技术是什么
  • 自适应网站做推广代理注册公司是不是要户口本
  • 腾讯微博做网站外链步骤外国出名的设计网站