城堡之旅前奏——模板方法模式回顾
墨初 知识笔记 117阅读
模板方法模式:模板方法模式准备一个抽象类,以具体方法和具体构造函数的形式实现一些逻辑,然后声明一些抽象方法强制子类实现rest逻辑。不同的子类可以用不同的方式实现这些抽象方法,从而实现不同的剩余逻辑。先做一个顶层的逻辑框架,逻辑的细节留给具体的子类去实现。请参见下面的简单示例代码:AbstractClass是基类,包含TemplateMethod()。在这个方法中,调用了PrimitiveOperation1()和PrimitiveOperation2(),它们是由ConcreteClass子类实现的。使用系统;//' abstract class ' abstract : rgba(0,0,255,1)'抽象类{//方法抽象公共void原语操作1();抽象公共void primitive operation 2();
an>// The Template method
public
void TemplateMethod()
{
Console.WriteLine(
"In AbstractClass.TemplateMethod()");
PrimitiveOperation1();
PrimitiveOperation2();
}
}
// "ConcreteClass"
class
ConcreteClass : AbstractClass
{
// Methods
public
override void PrimitiveOperation1()
{
Console.WriteLine(
"Called ConcreteClass.PrimitiveOperation1()");
}
public
override void PrimitiveOperation2()
{
Console.WriteLine(
"Called ConcreteClass.PrimitiveOperation2()");
}
}
///
<summary>
///
Client test
///
</summary>
public
class Client
{
public
static void Main( string[] args )
{
// Create instance and call template method
ConcreteClass c = new ConcreteClass();
c.TemplateMethod();
}
}
Output

|

标签: