php 设计模式(抽象工厂)
来源:互联网 发布:温度控制pid算法c程序 编辑:程序博客网 时间:2024/06/05 10:08
abstract ApptEncoder { abstract function encoder();}class BloggsApptEncoder extends ApptEncoder{ function encoder() { return 'bapp'; }}class BloggsTtdEncoder extends ApptEncoder{ function encoder(){ return 'BloggsTtdEncoder'; }}class BloggsContactEncoder extends ApptEncoder{ function encoder(){ return 'BloggsContactEncoder'; }}abstract class CommsManagers{ abstract function getHeaderText(); abstract function getApptEncoder(); abstract function getTtdEncoder(); abstract function getContactEncoder(); abstract function getFooterText();}class BlogCommsManager extends CommsManagers{ public function getHeaderText(){ return 'Blog header'; } public function getApptEncoder(){ return new BloggsApptEncoder(); } public function getTtdEncoder(){ return new BloggsTtdEncoder(); } public function getContactEncoder(){ return new BloggsContactEncoder(); } public function getFooterText(){ return 'Blog Text'; }}
改进型
//改进abstract class CommsManager{ const APPT = 1; const TTD = 2; const CONTACT = 3; abstract function getHeaderText(); abstract function make($flag_info); abstract function getFooter();}class BlogsCommsManager extends CommsManager{ function getHeaderText(){ return 'Blog header'; } function make($flag_info){ switch($flag_info){ case self::APPT : return new BloggsApptEncoder(); case self::TTD: return new BloggsTtdEncoder(); case self::CONTACT: return new BloggsContactEncoder(); } } function getFooter(){ return 'Blogs Footer'; }}
阅读全文
0 0
- php 设计模式(抽象工厂)
- php设计模式学习系列(四)--抽象工厂模式
- 【设计模式】抽象工厂模式(二)- PHP
- PHP设计模式系列(十):抽象工厂模式
- 【设计模式】之抽象工厂模式-PHP
- php设计模式 抽象工厂模式
- PHP设计模式——抽象工厂
- PHP实现抽象工厂设计模式
- php设计模式之抽象工厂
- 设计模式(抽象工厂)
- Php设计模式之工厂模式(三)【抽象工厂模式 AbstractFactory】
- Php设计模式之工厂模式(三)【抽象工厂模式 AbstractFactory】
- PHP设计模式-工厂系列(三)-抽象工厂模式
- PHP设计模式-工厂系列(三)-抽象工厂模式
- 设计模式--工厂模式(工厂方法、抽象工厂)
- 设计模式 - 工厂模式(简单,工厂方法,抽象工厂)
- 设计模式指工厂模式(简单工厂,抽象工厂)
- php 抽象工厂模式
- HttpUrlconnction_post
- PIMPL设计模式的理解和使用
- Zepto.js 之一步一步看源码(二)
- 用Python3.6来做维基百科中文语料
- csdn中如何转载文章
- php 设计模式(抽象工厂)
- 神经网络
- Linux 用户切换、修改用户名、修改密码
- tcp三次握手
- 对两个事件分发案例的探究
- 解决:make:cc 命令未找到的解决方法
- Struts2系列之配置文件
- 为按钮连续点击设置时间间隔
- Android数据库的使用