装饰模式[写给自己]
public abstract class Log
{
public abstract void Write(string log);
}
public abstract class LogWrapper : Log
{
private Log _log;
public LogWrapper(Log log)
{
_log = log;
}
public override void Write(string log)
{
_log.Write(log);
}
}
// 避免了 "子类复子类,子类何其多" 的错误。
//仅仅通过构造函数就将基类的属性添加到当前的类中。
我的理解:
类(A)想实现某个接口的一些功能,但是它懒,
自己创建对象的时候偷拿了已经实现这个接口的类(B),
方便的用了B中已经实现的方法 ,对其中的方法修修改改(装饰)就成自己的了。
posted on 2010-05-15 15:27 Master zhu 阅读(128) 评论(0) 编辑 收藏 举报