php设计模式之装饰模式

widuu 2013-5-28 PHP技术 3,488 0 喜欢 (0)

其实这个设计模式我在java开发的时候用的比较多,因为文件的I/O用的就是装饰模式,今天用PHP讲解一下装饰模式这个东西,我在网上下载了一个类图大家看一下也许就明白了!

下边是代码,第一个是base类图也就是基类!
[php]
<?php
interface base{
public function show();
}
[/php]
第二个人物的 也就是实现基类的
[php]
<?php
class ren implements base{
public function show(){
echo "肖伟";
}
}
[/php]
第三个是装饰类
[php]
<?php
interface zhuangshi extends base{
public function show();
}
[/php]
第四个是实现装饰类的
[php]
<?php

class maozi implements zhuangshi{
private $ren;

public function __construct($ren){
$this->ren = $ren;
}
public function show(){
echo "带帽子";
$this->ren->show();
}
}
[/php]
第五个也是实现装饰类 包装人类的
[php]
<?php

class yifu implements zhuangshi{
private $ren;

public function __construct($ren){
$this->ren = $ren;
}
public function show(){
echo "穿衣服";
$this->ren->show();
}
}
[/php]
第六个就是生产环境也就是使用环境
[php]
<?php
header("content-type:text/html;charset=utf-8");
function __autoload($classname){
require $classname.".class.php";
}
$ren = new maozi(new yifu(new ren()));
$ren->show();
[/php]
大家测试一下然后手动谢谢试试!

转载请注明来自微度网络,本文标题:《php设计模式之装饰模式》

喜欢 0 发布评论
Top