随笔 - 37  文章 - 29  trackbacks - 0


常用链接

留言簿(3)

随笔分类

随笔档案

最新评论

阅读排行榜

评论排行榜

9、 DECORATOR: Mary过完轮到Sarly过生日,还是不要叫她自己挑了,不然这个月伙食费肯定玩完,拿出我去年在华山顶上照的照片,在背面写上 “最好的的礼物,就是爱你的Fita”,再到街上礼品店买了个像框(卖礼品的MM也很漂亮哦),再找隔壁搞美术设计的Mike设计了一个漂亮的盒子装起来……,我们都是Decorator,最终都在修饰我这个人呀,怎么样,看懂了吗?

装饰模式:装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案,提供比继承更多的灵活性。动态给一个对象增加功能,这些功能可以再动态的撤消。增加由一些基本功能的排列组合而产生的非常大量的功能。


它最经典的特征就是:

1.
必须有一个它自己的父类自己的成员变量;
2.必须继承公共父类。


public interface Component {
    public void methodA();
}
public class ConcreteComponent implements Component {
    public void methodA() {
       //do somthing...
    }
}
public class Decorator implements Component {
    private Component c;
   
    public Decorator(Component c) {
       this.c = c;
    }
    public void methodA() {
       //do sth.
       c.methodA();
       //do sth.
    }
}

下面这个例子来自Head First,收藏
http://www.blogjava.net/sterning/archive/2008/01/21/176679.html
posted on 2008-01-24 11:31 EvanLiu 阅读(2557) 评论(0)  编辑  收藏 所属分类: 设计模式

只有注册用户登录后才能发表评论。


网站导航: