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

附近的网站设计制作价格百度搜索引擎网址

附近的网站设计制作价格,百度搜索引擎网址,湖州北京网站建设,西宁网站设计制作公司系列文章目录 设计模式之-6大设计原则简单易懂的理解以及它们的适用场景和代码示列 设计模式之-单列设计模式,5种单例设计模式使用场景以及它们的优缺点 设计模式之-3种常见的工厂模式简单工厂模式、工厂方法模式和抽象工厂模式,每一种模式的概念、使用…

系列文章目录

设计模式之-6大设计原则简单易懂的理解以及它们的适用场景和代码示列
设计模式之-单列设计模式,5种单例设计模式使用场景以及它们的优缺点
设计模式之-3种常见的工厂模式简单工厂模式、工厂方法模式和抽象工厂模式,每一种模式的概念、使用场景和优缺点。
设计模式之模板方法模式,通俗易懂快速理解,以及模板方法模式的使用场景
设计模式之-建造者模式通俗易懂理解,以及建造者模式的使用场景和示列代码
设计模式之-代理模式,快速掌握理解代理模式,以及代理模式的使用场景
设计模式之-原型模式,快速掌握原型模式,通俗易懂的理解原型模式以及使用场景
设计模式之-中介者模式,快速掌握中介者模式,通俗易懂的讲解中介者模式以及它的使用场景
设计模式之-责任链模式,快速掌握责任链模式,通俗易懂的讲解责任链模式以及它的使用场景
设计模式之-装饰模式,快速掌握装饰模式,通俗易懂的讲解装饰模式以及它的使用场景
设计模式之-适配器模式,快速掌握适配器模式,通俗易懂的讲解适配器模式以及它的使用场景


文章目录

  • 系列文章目录
  • 一、快速理解责任链模式
  • 二、责任链模式使用场景
  • 代码示例


一、快速理解责任链模式

责任链模式是一种行为型设计模式,它将请求的发送者和接收者解耦,使多个对象都有机会处理请求。每个接收者都包含对下一个接收者的引用,形成一个链条,当请求从链条的头部开始传递时,每个接收者都有机会处理请求,直到有一个接收者能够处理为止。

在现实生活中,责任链模式的例子可以是请假审批流程。假设有多个层级的审批人员,每个人都有不同的审批权限。当员工提交请假申请时,请求会从最高层级的审批人员开始传递,如果一个审批人员无法处理请求,则将请求传递给下一个审批人员,直到有人能够处理为止。

二、责任链模式使用场景

  1. 当有多个对象可以处理同一个请求时,可以使用责任链模式。每个对象都有机会处理请求,但处理者不需要知道请求的发送者和后续处理者。
  2. 当需要动态指定处理请求的对象时,可以使用责任链模式。可以根据特定条件来决定请求的传递顺序或跳过某些处理者。

代码示例

下面是一个通俗易懂的责任链模式示例代码,以请假审批为场景:

// 抽象处理者:审批人
abstract class Approver {protected Approver nextApprover;public void setNextApprover(Approver nextApprover) {this.nextApprover = nextApprover;}public abstract void approveLeave(int days);
}// 具体处理者:主管
class Supervisor extends Approver {@Overridepublic void approveLeave(int days) {if (days <= 2) {System.out.println("主管批准了请假申请");} else {if (nextApprover != null) {nextApprover.approveLeave(days);} else {System.out.println("没有人能够处理该请假申请");}}}
}// 具体处理者:经理
class Manager extends Approver {@Overridepublic void approveLeave(int days) {if (days <= 5) {System.out.println("经理批准了请假申请");} else {if (nextApprover != null) {nextApprover.approveLeave(days);} else {System.out.println("没有人能够处理该请假申请");}}}
}// 具体处理者:CEO
class CEO extends Approver {@Overridepublic void approveLeave(int days) {if (days <= 7) {System.out.println("CEO批准了请假申请");} else {System.out.println("没有人能够处理该请假申请");}}
}// 客户端代码
public class Main {public static void main(String[] args) {Approver supervisor = new Supervisor();Approver manager = new Manager();Approver ceo = new CEO();supervisor.setNextApprover(manager);manager.setNextApprover(ceo);supervisor.approveLeave(3); // 主管批准了请假申请supervisor.approveLeave(6); // CEO批准了请假申请supervisor.approveLeave(9); // 没有人能够处理该请假申请}
}

在上面的示例中,Approver是抽象处理者,定义了处理请假申请的方法和下一个处理者的引用。Supervisor、Manager和CEO是具体处理者,分别实现了抽象处理者的处理请假申请方法,并在其中判断是否能够处理请求,如果不能处理则将请求传递给下一个处理者。

在客户端代码中,首先创建了主管、经理和CEO对象,并设置它们的下一个处理者。然后调用主管的approveLeave方法来发起请假申请,该方法会根据请假天数判断是否能够处理请求,如果不能处理则会将请求传递给下一个处理者。最后,根据不同的请假天数,输出不同的处理结果。

通过使用责任链模式,可以灵活地指定处理请求的对象,并且可以动态调整处理者的顺序或跳过某些处理者。责任链模式还可以将请求的发送者和接收者解耦,使得它们之间的依赖关系更加松散。

http://www.khdw.cn/news/45522.html

相关文章:

  • 做婚庆网站有哪些内容丁的老头seo博客
  • 广东联通通信建设有限公司 网站seo是啥意思
  • 网站备案背景墙必应搜索引擎入口
  • 漯河网站制作平台营销策略都有哪些
  • 政府网站建设方案如何写太原好的网站制作排名
  • 湖南省住房城乡建设网站优化seo设置
  • 做微网站那pc端显示啥百度大数据官网入口
  • 定制版网站建设费用企业网络推广平台
  • 深圳保障性住房新政策优化大师有用吗
  • 企业网站关键词优化希爱力的功效及副作用
  • java开发门户网站怎么在百度上推广自己的公司信息
  • 上海最好的网站设计公司学市场营销后悔死了
  • 股权变更要在工商局网站做吗hyein seo
  • 网站乱码解决办法网站建站方式有哪些
  • 网站架设软件自动点击器永久免费版
  • 无锡高端网站建设平台新闻联播今日新闻
  • wordpress 海量数据seo是什么意思中文翻译
  • 企业北京响应式网站制作爱站网关键词挖掘查询工具
  • 北京模板开发建站免费做网站软件
  • 十堰网站优化互联网营销师是哪个部门发证
  • 功能型网站介绍免费推广自己的网站
  • 户外网站设计智慧软文网站
  • 北京怀柔做网站管理运营的公司凡科网怎么建网站
  • 桂林旅游网站线上平台推广方式
  • 网站上传用什么软件做视频教程百度竞价推广点击软件奔奔
  • 高端个人网站百度推广400电话
  • wordpress 转 html如何优化关键词提升相关度
  • 程序员给女盆友做的网站b站推广怎么买
  • wordpress 婚礼嘉兴seo
  • 哈尔滨做网站优秀网站