代理模式

<?php
/**
 * 送礼物接口
 */
interface send_gift {
    public function send_flowers(); //送鲜花
    public function send_chocolate(); //送巧克力

}

/**
 * 小明实现了送礼物的接口
 */
class xiaoming implements send_gift {
    private $meizhi = null;
    public function __construct (meizhi $meizhi) {
        $this->meizhi = $meizhi;
    }
    public function send_flowers() {
        echo $this->meizhi->name,',送你鲜花',chr(10);
    }
    public function send_chocolate() {
        echo $this->meizhi->name,',送你巧克力',chr(10);
    }
}

/**
 * 妹纸
 */
class meizhi {
    public $name = '';
    public function __construct($name) {
        $this->name = $name;
    }
}

/**
 * 小明的经纪人也实现了送礼接口
 */
class xiaoming_proxy implements send_gift {
    private $xiaoming = null;
    public function __construct(meizhi $meizhi) {
        $this->xiaoming = new xiaoming($meizhi);
    }
    public function send_flowers() {
        echo '你好,我是小明的代理,';
        $this->xiaoming->send_flowers();
    }
    public function send_chocolate() {
        echo '你好,我是小明的代理,';
        $this->xiaoming->send_chocolate();
    }
}

$xiaoming_proxy = new xiaoming_proxy(new meizhi('叶子美女'));
$xiaoming_proxy->send_flowers();
$xiaoming_proxy->send_chocolate();

代理模式(proxy):为其它对象提供一种代理,以控制对这个对象的访问。

转载于:https://www.cnblogs.com/buexplain/p/4629542.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值