文档章节

责任链模式

eatnothing
 eatnothing
发布于 2017/08/31 20:17
字数 217
阅读 13
收藏 0

责任链模式

使多个对象有机会处理请求,从而避免了请求者和发送者的耦合关系,将这些对象连城一条链,并沿着这条链传递请求,直到有人处理它

#####组成

  • 请求者(也可以有抽象类)
  • 抽象管理者
  • 实体管理者(>2)
<?php

/**
 * User: didi
 * Date: 2017/8/31
 * Time: 下午5:20
 */
class Request {
    public $name;
    public $num;
}


abstract class  Manager {
    protected $name;
    protected $manager;

    public function __construct($_name){
        $this->name = $_name;
    }


    public function setManager(Manager $manager){
        $this->manager = $manager;
    }

    abstract function apply(Request $request);
}


class Father extends Manager {
    public function __construct($name){
        parent::__construct($name);
    }

    public function apply(Request $request){


        if ($request->num != 5) {
            echo 'this is not 5';
        } else {
            $this->manager->apply($request);
        }

    }
}

class GrandFather extends Manager {
    public function __construct($name){
        parent::__construct($name);
    }

    public function apply(Request $request){
        
        echo 'fuck this is ur grandFather';

    }
}


class Client {


    public function __construct(){
        $re = new Request();
        $re->num = 5;
        $father  = new Father('fucker');
        $grand_father = new GrandFather('mother');

        $father->setManager($grand_father);


        $father->apply($re);

    }
}


$a = new Client();

© 著作权归作者所有

共有 人打赏支持
eatnothing
粉丝 38
博文 128
码字总数 68736
作品 0
昌平
程序员
私信 提问

暂无文章

HTTP状态码对照表(HTTP response codes)

由于博主工作最近在做大数据日志分析的时候,用到了很多http状态码相关的知识。博主基本只记得其中200和404两个,所以,在此做个笔录。 当浏览者访问一个网页时,浏览者的浏览器会向网页所在...

em_aaron
24分钟前
2
0
java 反射

基本概念 RTTI,即Run-Time Type Identification,运行时类型识别。RTTI能在运行时就能够自动识别每个编译时已知的类型。   要想理解反射的原理,首先要了解什么是类型信息。Java让我们在运...

细节探索者
34分钟前
1
0
推荐转载连接

https://www.cnblogs.com/ysocean/p/7409779.html#_label0

小橙子的曼曼
今天
3
0
雷军亲自打造的套餐了解下:用多少付多少

12月28日消息,小米科技创始人兼CEO雷军微博表示,小米移动任我行套餐方案,原则上就是明明白白消费,用多少付多少,不用不花钱!上网、电话和短信都是一毛钱,上网0.1元/M,电话0.1元/分钟,...

linuxCool
今天
3
0
协议简史:如何学习网络协议?

大学时,学到网络协议的7层模型时,老师教了大家一个顺口溜:物数网传会表应。并说这是重点,年年必考,5分的题目摆在这里,你们爱背不背。 考试的时候,果然遇到这个问题,搜索枯肠,只能想...

Java干货分享
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部