当前位置:首页 > CN2资讯 > 正文内容

代理模式cm承包模式代理和非代理

2天前CN2资讯

代理,指的就是一个角色代表另一个角色采取行动,就象生活中,一个红酒厂商,是不会直接把红酒零售客户的,都是通过代理来完成他的销售业务。而客户,也不用为了喝红酒而到处找工厂,他只要找到厂商在当地的代理就行了,具体红酒工厂在那里,客户不用关心,代理会帮他处理。

 

代理模式,就是给某一对象提供代理对象,并由代理对象控制具体对象的引用。

 

代理模式涉及的角色:

 

抽象主题角色,声明了代理主题和真实主题的公共接口,使任何需要真实主题的地方都能用代理主题代替。

代理主题角色,含有真实主题的引用,从而可以在任何时候操作真实主题,代理主题功过提供和真实主题相同的接口,使它可以随时代替真实主题。代理主题通过持有真实主题的引用,不但可以控制真实主题的创建或删除,可以在真实主题被调用前进行拦截,或在调用后进行某些操作。

真实代理对象,定义了代理角色所代表的具体对象。

<?php

//定义一种类型的女人,王婆和潘金莲都属于这个类型的女人

interface KindWomen

  //这种类型的女人能做什么事情呢?

 public function makeEyesWithMan();//抛媚眼

  publicfunction happyWithMan();//happy what? You know that!

}

 

//定一个潘金莲是什么样的人

class PanJinLian implements KindWomen

{

       public function happyWithMan() {                

                echo "潘金莲在和男人做那个.....";

       }

       public function makeEyesWithMan() {

                echo "潘金莲抛媚眼";

       }

}

 

//王婆这个人老聪明了,她太老了,是个男人都看不上,

//但是她有智慧有经验呀,她作为一类女人的代理!

class WangPo implements KindWomen {

       var $kindWomen;

 

       //她可以是KindWomen的任何一个女人的代理,只要你是这一类型

       public function WangPo($kindWomen = null){

                if (empty($kindWomen)) {

                        $this->kindWomen =new PanJinLian();//默认的话,是潘金莲的代理 

                }else{

                        $this->kindWomen =$kindWomen;

                }

       }

       //自己老了,干不了,可以让年轻的代替

       public function happyWithMan() {

               $this->kindWomen->happyWithMan(); 

       }

        //王婆这么大年龄了,谁看她抛媚眼?!

       public function makeEyesWithMan() {

               $this->kindWomen->makeEyesWithMan(); 

        } 

}

 

 

//定义一个西门庆,这人色中饿鬼

class XiMenQing

{

  /*

  * 水浒里是这样写的:西门庆被潘金莲用竹竿敲了一下难道,痴迷了,

  * 被王婆看到了,  就开始撮合两人好事,王婆作为潘金莲的代理人

  * 收了不少好处费,那我们假设一下:

  * 如果没有王婆在中间牵线,这两个不要脸的能成吗?难说的很!

  */

 public function __construct() {

       //把王婆叫出来

       $wangPo = new WangPo();   

       //然后西门庆就说,我要和潘金莲happy,然后王婆就安排了西门庆丢筷子的那出戏:

         $wangPo->makeEyesWithMan();  //看到没,虽然表面上时王婆在做,实际上爽的是潘金莲

         $wangPo->happyWithMan();

  }

}

 

//开搞了

$XiMengQing = new XiMenQing();

 


    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/24053.html

    标签: 代理模式
    分享给朋友:

    “代理模式cm承包模式代理和非代理” 的相关文章

    如何通过v2ray回国节点轻松访问中国大陆互联网

    回国节点的基本概念 回国节点在最近几年逐渐成为了许多用户在国外访问中国大陆内容的重要工具。随着互联网的迅猛发展,很多人希望在国外能够轻松访问国内的一些服务和网站,而v2ray提供的回国节点正好满足了这样的需求。通过这些节点,用户可以实现网络回国,无缝连接到中国大陆的互联网。 v2ray是一个灵活而高...

    狗云实名认证的重要性与服务体验

    狗云简介 提起狗云(Dogyun),首先让我想起的是它在国内主机服务商中崭露头角的那段经历。成立于2019年,这家由国人创办的云服务平台,积极响应了市场对高质量、低价格VPS服务的需求。服务范围覆盖美国、日本和中国香港等地,让不少技术爱好者和企业客户看到了更多选择的可能。由于其价格相对亲民,狗云逐渐...

    专业网站被墙检测工具及应对措施攻略

    网站被墙检测工具概述 网络环境的日益复杂,使得网站被墙的问题变得越来越普遍。这种封锁不仅影响了网站的访问量,还可能损害企业的形象和信誉。了解网站被墙的定义及其影响,是我们拥有更好网络体验的基础。 网站被墙,简单来说,指的是某些网站因各种政策或技术原因,无法在特定地区被访问的现象。这种情况会导致用户无...

    选择Lisahost VPS服务,提升您海外电商、游戏和流媒体体验

    Lisahost 是一家于 2020 年 1 月成立的 VPS(虚拟专用服务器)提供商,专注于为全球用户提供高质量的云服务。我发现它的目标市场覆盖了包括香港、台湾、韩国、日本、新加坡、美国和英国等多个地区。作为一家新兴企业,lisahost 用创新的服务模式和多样化的产品,为需要高效网络及流畅访问的...

    搬瓦工DC9:高性价比VPS选择,稳定快速的服务器解决方案

    在这个快速发展的互联网时代,越来越多的人开始寻求高效、稳定的服务器解决方案。搬瓦工DC9正是为满足这种需求而推出的一款限量版VPS套餐。它不仅方便快捷,而且在性能和性价比上都表现出色,让用户在搭建网站、进行游戏或其他项目时更加省心。 搬瓦工DC9的全名是“The DC9 Plan”,每年仅需38美元...

    主机论坛:获取信息与交流经验的最佳平台

    主机论坛概述 在当今的数字时代,主机论坛作为一个专注于域名、主机、VPS和服务器的讨论与信息交流平台,显得尤为重要。对于站长、开发者和一般用户来说,它们不仅是资讯获取的渠道,更是一个技术交流和问题解决的空间。主机论坛通过汇聚来自不同背景的用户,形成了一个活跃的社区,每个人都能找到自己感兴趣的话题,分...