《大话设计模式》之 装饰模式 Delphi实现

发布时间:2024-12-19 01:40

设计模式在编程中的应用:工厂模式实例 #生活知识# #编程教程#

最新推荐文章于 2022-08-14 18:00:01 发布

join牛牛 于 2010-05-28 16:36:00 发布

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

 装饰模式:动态地给一个对象添加一些额外的职责。就增加功能来说,Decorator模式相比生成子类更为灵活。[GOF 《设计模式》]

这句话怎么理解?

 一般来说,增加功能,一般有增加类本身的功能;另外一种是增加子类;但是现实中,靠增加子类来满足实际需求,是远远不够的,缺少灵活性;

装饰模式,它强调的要增加功能,但又不允许生产过多子类,那么该怎么实现呢? 它的指导思想,是进行包裹,层次包裹。子类对象包裹父类对象,一层一层,功能就一层一层。

  1.首先定义一个首先抽象类或接口;

  2.定了两个继承抽象类或实现接口方法的类,一个是装饰类,一个一般类,装饰类,定义一个方法,接受父类型;

{
 装饰模式,强调的功能逐渐一层层包裹。 本例子, 以西游记中,孙悟空的72般变化,话说当年,
 悟空不远千里,拜师学艺,功夫是一天天长进。腾云驾雾,翻筋斗,变美女/树等,这些功夫,是
 一一学会的。
 抽象虚拟类,作为父类。


所有代码 均在 Delphi7 测试通过

}
unit Decorator;

interface
uses ComObj;
type

   {基础类}
  TMonkey = class(TObject)
  private

网址:《大话设计模式》之 装饰模式 Delphi实现 https://www.yuejiaxmz.com/news/view/512754

相关内容

设计模式之策略模式实例
C++ 设计模式之策略模式
【设计模式】策略模式 ( 简介
【设计模式】代理模式
行为型设计模式之策略模式(Strategy)
设计模式:策略(Strategy)模式
图解设计模式之发布
设计模式第11讲——外观模式(Facade)
设计模式实战:在线购物系统的设计与实现
【设计模式】状态模式 ( 简介

随便看看