`
donald3003a
  • 浏览: 65776 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论
  • 淼淼E馒头: 这举列有点不恰当啊。。电影人和不同类型的电影。是两个不同概念 ...
    合成模式

职责链模式

阅读更多
职责链模式
很形象的一个模式,就好比请假一样,如果自己不能审批就要交给上级。所以这个行为模式很好理解
实现如下:
1、责任链抽象类
public abstract class Handler {

	protected Handler handler;

	public void setSuccessor(Handler handler) {
		this.handler = handler;
	}

	public abstract void handleRequest(int day);

}


2、第1级
public class Leader extends Handler {

	@Override
	public void handleRequest(int day) {
		if (day <= 3) {
			System.out.println("Leader hanlde");
		} else {
			handler.handleRequest(day);
		}

	}

}

3、第2级
public class Manager extends Handler {
	@Override
	public void handleRequest(int day) {
		if (day <= 7) {
			System.out.println("Manager hanlde");
		} else {
			handler.handleRequest(day);
		}

	}
}


4、第3级
public class Ceo extends Handler {

	@Override
	public void handleRequest(int day) {
		if (day <= 14) {
			System.out.println("Ceo hanlde");
		} else {
			System.out.println("no hanlde");
		}

	}
}



5、调用类
public class Main {
	public static void main(String[] args) {

		Handler leaderHandler = new Leader();
		Handler managerHandler = new Manager();
		Handler ceoHandler = new Ceo();

		leaderHandler.setSuccessor(managerHandler);
		managerHandler.setSuccessor(ceoHandler);

		int[] request = { 2, 5, 14, 15 };
		for (int i : request) {
			leaderHandler.handleRequest(i);
		}

	}
}

分享到:
评论

相关推荐

    设计模式之职责链模式(ChainOfResponsibilityPattern)

    职责链模式(ChainOfResponsibilityPattern)是一种行为设计模式,主要目的是通过建立一个处理请求的对象链,使得请求可以在链上的各个对象间传递,直到被某个对象处理。这种模式可以有效地解耦请求发起者和处理者,...

    设计模式 - 职责链模式(C++实例)

    职责链模式(Chain of Responsibility)是一种行为设计模式,它的核心思想是将一系列处理请求的对象组织成一条链,每个对象都包含对请求的处理或传递的责任。在C++中实现职责链模式,我们可以创建一个抽象处理器类,...

    职责链模式模型代码

    职责链模式(Chain of Responsibility)是一种行为设计模式,它允许我们沿着对象链传递请求,让每个对象决定是否处理这个请求,或者将请求传递给链中的下一个对象。在C#中,我们可以利用类和接口来实现这种模式。让...

    第17章_职责链模式.ppt

    【职责链模式】是行为型模式的一种,其主要动机是解耦请求的发送者和处理者。在职责链中,多个对象可以接收并处理同一个请求,这些对象形成一条链,请求沿着链传递,直到某个对象负责处理。这种方式减少了对象间的...

    设计模式:职责链模式

    职责链模式(Chain of Responsibility)是设计模式中的一种行为模式,它允许将请求沿着处理者对象的链式结构进行传递,直到某个对象决定处理这个请求。这种模式的主要优点在于可以解耦发送者和接收者,使得系统更加...

    职责链模式--python

    参考&lt;大话设计模式&gt;,采用python书写的模板类。职责链模式。

    Java 23种设计模式17职责链模式.pdf

    ### Java设计模式详解:职责链模式 #### 行为型模式概述 行为型设计模式着重于定义对象间的职责分配及算法的抽象化。不同于结构型模式关注类和对象的组合,行为型模式更注重对象之间的交互与职责划分,强调的是在...

    职责链模式-基本代码.rar_C#_职责链模式

    职责链模式是一种设计模式,它允许我们沿着一个对象链来传递请求,每个对象都可以处理请求,也可以将请求传递给链中的下一个对象。这种模式在处理事件流或责任分发时非常有用,它使得代码更加灵活,降低了耦合度。在...

    职责链模式PPT带源码

    职责链模式是一种行为设计模式,它允许我们定义一系列对象,这些对象可以按顺序处理请求,形成一条职责链。每个对象都是链上的一个节点,负责处理特定类型的请求或将其传递给链中的下一个对象。这种模式使得我们可以...

    职责链模式代码示例

    职责链模式是一种设计模式,它允许我们把请求沿着处理者对象的链条传递,直到某个对象决定处理这个请求。这种模式可以避免请求发送者与接收者之间的耦合,使得系统更具有弹性,因为添加新的处理者或者改变现有处理者...

    设计模式-职责链模式(讲解及其实现代码)

    职责链模式是一种行为设计模式,它允许我们定义一系列对象,这些对象可以按顺序接收请求,每个对象都可以处理请求或将其传递给链中的下一个对象。这种模式使得我们可以将请求的发送者与接收者解耦,同时增加了系统...

    (行为型模式) Chain Of Responsibility 职责链模式

    ### (行为型模式) Chain Of Responsibility 职责链模式 #### 李建忠 jianzhong.lee@gmail.com #### 设计模式论坛: forum.softcompass.com #### 上海祝成科技高级培训讲师 www.softcompass.com #### 请求的发送者...

    Objective C职责链模式设计源码

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

    24职责链模式.zip

    职责链模式是一种设计模式,它在软件工程中用于处理请求的传递和处理。这个模式的主要思想是将多个处理对象组织成一个链条,每个对象都包含对请求的一部分处理能力。当一个请求进入系统时,它会沿着这个链进行传递,...

    201626705063梁艳萍职责链模式.pptx

    ### 201626705063梁艳萍职责链模式.pptx 知识点解析 #### 一、职责链模式简介 职责链模式是一种行为设计模式,其核心思想在于通过构建一系列处理对象并将这些对象串联成一条链路,使得一个请求可以在该链路上依次...

    设计模式之职责链模式

    设计模式之职责链模式,这份文档以例子的形式讲诉了设计模式之职责链模式,希望可以帮助需要的人!

    第十九讲:职责链模式

    职责链模式(Chain of Responsibility Pattern)是一种行为设计模式,它使你能在不指定接收者的情况下,将请求沿着处理者链进行发送。每个处理者都包含对下一个处理者的引用,允许请求在链中传递,直到被某个处理者...

    职责链模式的结构优化

    职责链模式(Chain of Responsibility Pattern)是一种行为设计模式,它允许将请求沿着处理者对象的链进行传递,直到某个对象处理该请求。这种模式的主要优点是解耦了发送者和接收者,使得系统更加灵活,可以动态...

    职责链模式.cpp职责链模式的实现

    职责链模式.cpp职责链模式的实现

Global site tag (gtag.js) - Google Analytics