编程中的那些套路——关于桥接模式
该文章属于《编程中的那些经典套路——设计模式汇总》系列,并且以下内容基于语言PHP
今天来谈谈桥接模式,桥接模式的功能在于将两个原本不相关的类结合在一起,然后利用两个类中的方法和属性,输出一份新的结果。
如图:
来看下具体代码吧:
桥接模式.php
class Info { public $lev; //发送等级:普通,重要,特级 public $target;//通过什么方式发送 //实际发送方法 public function Sending($to,$content){ //先把消息等级确定了 $content = $this->lev->msg($content); $target = $this->target->send($to); return $target.$content; }}//普通消息class CommonInfo { public function msg($content){ return '普通消息:' . $content; }}//重要消息class ImportInfo { public function msg($content){ return '重要消息:' . $content; }}//特别消息class SpecialInfo { public function msg($content){ return '特别消息:' . $content; }}//站内发送方式class ZnSend { public function send($to){ return '站内发给'. $to; }}//QQ发送方式class QQSend { public function end($to){ return 'QQ发给'. $to; }}//Email发送方式class EmailSend { public function send($to){ return '邮箱发给'. $to; }}$info = new Info();//实例化桥接类$info->target = new ZnSend(); //实例化发送方式$info->lev = new CommonInfo();//实例化消息等级print_r($info->Sending('小明','回家吃饭'));//调用桥接类方法Sending,让ZnSend类和CommonInfo类结合//output:站内发给小明普通消息:回家吃饭?>
外部调用的时候,只需要选择并实例化自己需要的类,然后赋值给桥接器的属性里,最后就交给桥接器里面的逻辑吧,它会整合出一份你所需要的结果,这就是桥接模式
该文章属于《编程中的那些经典套路——设计模式汇总》系列
关键字:php, 设计模式, 面试相关, 编程思想
版权声明
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处。如若内容有涉嫌抄袭侵权/违法违规/事实不符,请点击 举报 进行投诉反馈!