标签:style blog class code java ext
参考资料:《大话设计模式》
//模板方法模式--处理问题的步骤相同,但步骤的实现不同 using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ds_templatemethod { class Program { static void Main(string[] args) { Console.WriteLine("第一种方法:"); AbstractClass abs = new MethodAA(); abs.TemplateMethod(); Console.WriteLine("第二种方法:"); AbstractClass abss = new MethodBB(); abss.TemplateMethod(); } } /// <summary> /// 模板类 /// </summary> abstract class AbstractClass { protected abstract void MethodA(); protected abstract void MethodB(); /// <summary> /// 模板方法:给出了逻辑的骨架 /// </summary> public void TemplateMethod() { Console.Write("第一步:排序--"); MethodA(); Console.Write("第二步:打印--"); MethodB(); Console.WriteLine("-------步骤完成"); } } /// <summary> /// 第一种方法 /// </summary> class MethodAA : AbstractClass { protected override void MethodA() { Console.WriteLine("冒泡排序"); } protected override void MethodB() { Console.WriteLine("升序打印"); } } /// <summary> /// 第二种方法 /// </summary> class MethodBB : AbstractClass { protected override void MethodA() { Console.WriteLine("快速排序"); } protected override void MethodB() { Console.WriteLine("降序打印"); } } }
标签:style blog class code java ext
原文地址:http://www.cnblogs.com/nju347/p/3719574.html