Template Design Pattern
来源:互联网 发布:经纬度数据库 编辑:程序博客网 时间:2024/06/06 03:55
1.意图:定义一个算法的框架,把一些步骤延迟到子类中去实现;
2.适用:一次性实现一个算法的不变的部分,并且把可变的实现延迟到子类中去;子类的公共部分应该放在父类中去;
参与者:
1.抽象类AbstractClass:1)定义原语操作Primitive operation,需要子类去实现;2)定义模板方法,不仅调用原语操作,而且还调用其他AbstractClass的操作;
/// <summary>
/// The 'AbstractClass' abstract class
/// </summary>
abstract class AbstractClass
{
public abstract void PrimitiveOperation1();
public abstract void PrimitiveOperation2();
// The "Template method"
public void TemplateMethod()
{
PrimitiveOperation1();
PrimitiveOperation2();
Console.WriteLine("");
}
}
2.ConcreteClass:实现PremitiveOperation
/// <summary>
/// A 'ConcreteClass' class
/// </summary>
class ConcreteClassA : AbstractClass
{
public override void PrimitiveOperation1()
{
Console.WriteLine("ConcreteClassA.PrimitiveOperation1()");
}
public override void PrimitiveOperation2()
{
Console.WriteLine("ConcreteClassA.PrimitiveOperation2()");
}
}
/// <summary>
/// A 'ConcreteClass' class
/// </summary>
class ConcreteClassB : AbstractClass
{
public override void PrimitiveOperation1()
{
Console.WriteLine("ConcreteClassB.PrimitiveOperation1()");
}
public override void PrimitiveOperation2()
{
Console.WriteLine("ConcreteClassB.PrimitiveOperation2()");
}
}
3.Client
AbstractClass aA = new ConcreteClassA();
aA.TemplateMethod();
AbstractClass aB = new ConcreteClassB();
aB.TemplateMethod();
- Design Pattern 10-template
- Template Design Pattern
- Design Pattern Template Method
- Design Pattern 4: Template
- [Design Pattern] Template Method Pattern
- What is template design pattern?
- Design Pattern: Template Method 模式
- 一句话Design Pattern:Template Method
- design pattern——template
- Design Pattern -- Template Method Pattern(一)
- Template Method Pattern(Gof-Behavioral Design Pattern)
- Design Pattern - Behavioral Patterns - Template Pattern
- Design Pattern(1)-Template Method Pattern
- design pattern notes [5] - template method
- Design Pattern - Template Method(C#)
- Design Pattern Template 模板设计模式
- Template design pattern application in android
- Template Method Design Pattern - 模板方法设计模式
- gnome相关
- javascript常用检测脚本_javascript教程
- website(网站)与webapplication(应用程序)区别
- HostMonitor监控Mysql Service
- 存储过程自动执行
- Template Design Pattern
- New悟透JavaScript javascript 必看的文章
- protlet-ext
- java获得日期
- vi 详解
- Spring AOP介绍
- Multi-Level Drop Down Menu (多层下拉菜单)
- oracle 语句联系
- js图片幻灯片模式切换代码