php设计模式 Bridge (桥接模式)


Posted in PHP onJune 26, 2011
<?php 
/** 
* 桥接模式 
* 
* 将抽象部份与它实现部分分离,使用它们都可以有独立的变化 
*/ 
abstract class Implementor 
{ 
abstract public function operation(); 
} 
class ConcreteImplementorA extends Implementor 
{ 
public function operation() 
{ 
echo "ConcreteImplementorA Operation<br/>"; 
} 
} 
class ConcreteImplementorB extends Implementor 
{ 
public function operation() 
{ 
echo "ConcreteImplementorB Operation<br/>"; 
} 
} 
class Abstraction 
{ 
protected $_implementor = null; 
public function setImplementor($implementor) 
{ 
$this->_implementor = $implementor; 
} 
public function operation() 
{ 
$this->_implementor->operation(); 
} 
} 
class RefinedAbstraction extends Abstraction 
{ 
} 
class ExampleAbstraction extends Abstraction 
{ 
} 
// 
$objRAbstraction = new RefinedAbstraction(); 
$objRAbstraction->setImplementor(new ConcreteImplementorB()); 
$objRAbstraction->operation(); 
$objRAbstraction->setImplementor(new ConcreteImplementorA()); 
$objRAbstraction->operation(); 
$objEAbstraction = new ExampleAbstraction(); 
$objEAbstraction->setImplementor(new ConcreteImplementorB()); 
$objEAbstraction->operation();
PHP 相关文章推荐
十天学会php之第七天
Oct 09 PHP
destoon找回管理员密码的方法
Jun 21 PHP
PHP邮件发送类PHPMailer用法实例详解
Sep 22 PHP
浅谈php和.net的区别
Sep 28 PHP
解决ThinkPHP关闭调试模式时报错的问题汇总
Apr 22 PHP
PHP微信开发之二维码生成类
Jun 26 PHP
PHP水印类,支持添加图片、文字、填充颜色区域的实现
Feb 04 PHP
详解PHP使用Redis存储session时的一个Warning定位
Jul 05 PHP
PHP基于mcript扩展实现对称加密功能示例
Feb 21 PHP
laravel多条件查询方法(and,or嵌套查询)
Oct 09 PHP
解决tp5在nginx下修改配置访问的问题
Oct 16 PHP
PHP正则之正向预查与反向预查讲解与实例
Apr 06 PHP
php设计模式 Chain Of Responsibility (职责链模式)
Jun 26 #PHP
php设计模式 FlyWeight (享元模式)
Jun 26 #PHP
php设计模式 Mediator (中介者模式)
Jun 26 #PHP
php设计模式 Prototype (原型模式)代码
Jun 26 #PHP
PHP如何解决网站大流量与高并发的问题
Jun 25 #PHP
session在PHP大型web应用中的使用
Jun 25 #PHP
php URL跳转代码 减少外链
Jun 25 #PHP
You might like
ASP和PHP都是可以删除自身的
2007/04/09 PHP
php mssql 数据库分页SQL语句
2008/12/16 PHP
php 将bmp图片转为jpg等其他任意格式的图片
2009/06/21 PHP
php中利用post传递字符串重定向的实现代码
2011/04/21 PHP
JpGraph php柱状图使用介绍
2011/08/23 PHP
PHP 读取和编写 XML
2014/11/19 PHP
百度地图API使用方法详解
2015/08/25 PHP
PHP 数组遍历foreach语法结构及实例
2016/06/13 PHP
PHP中的use关键字及文件的加载详解
2016/11/28 PHP
Zend Framework实现自定义过滤器的方法
2016/12/09 PHP
[原创]后缀就扩展名为js的文件是什么文件
2007/12/06 Javascript
子窗口、父窗口和Silverlight之间的相互调用
2010/08/16 Javascript
IE6,IE7,IE8下使用Javascript记录光标选中范围(已补全)
2011/08/28 Javascript
JS中Iframe之间传值及子页面与父页面应用
2013/03/11 Javascript
js过滤HTML标签以及空格的思路及代码
2013/05/24 Javascript
通过js简单实现将一个文本内容转译成加密文本
2013/10/22 Javascript
httpclient模拟登陆具体实现(使用js设置cookie)
2013/12/11 Javascript
javascript中的五种基本数据类型
2015/08/26 Javascript
理解JavaScript表单的基础知识
2016/01/25 Javascript
JS实现的在线调色板实例(附demo源码下载)
2016/03/01 Javascript
jQuery Easyui学习教程之实现datagrid在没有数据时显示相关提示内容
2016/07/09 Javascript
利用AngularJs实现京东首页轮播图效果
2016/09/08 Javascript
jQuery基于ajax实现页面加载后检查用户登录状态的方法
2017/02/10 Javascript
JavaScript的数据类型转换原则(干货)
2018/03/15 Javascript
微信小程序项目实践之主页tab选项实现
2018/07/18 Javascript
vue实现类似淘宝商品评价页面星级评价及上传多张图片功能
2018/10/29 Javascript
Python用于学习重要算法的模块pygorithm实例浅析
2018/08/16 Python
使用selenium和pyquery爬取京东商品列表过程解析
2019/08/15 Python
python通过实例讲解反射机制
2019/10/17 Python
Python实现图片裁剪的两种方式(Pillow和OpenCV)
2019/10/30 Python
pandas实现将日期转换成timestamp
2019/12/07 Python
测绘工程系学生的自我评价
2013/11/30 职场文书
加强干部作风建设整改方案
2014/10/24 职场文书
涨价通知
2015/04/23 职场文书
2015年校本培训工作总结
2015/07/24 职场文书
2019年大学生学年自我鉴定!
2019/03/25 职场文书