zoukankan      html  css  js  c++  java
  • 设计模式:模板方法

    模板方法:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义改算法的某些特定步骤。

    namespace TemplateMethod
    {
        public abstract class AbstractClass
        {
            public abstract void PrimitiveOperation1();
            public abstract void PrimitiveOperation2();
            public void TemplateMethod()
            {
                PrimitiveOperation1();
                PrimitiveOperation2();
                Console.WriteLine("");
            }
        }
        public class ConcreteClassA:AbstractClass
        {
            public override void PrimitiveOperation1()
            {
                Console.WriteLine("具体类A方法1实现");
            }
            public override void PrimitiveOperation2()
            {
                Console.WriteLine("具体类A方法2实现");
            }
        }
        public class ConcreteClassB : AbstractClass
        {
            public override void PrimitiveOperation1()
            {
                Console.WriteLine("具体类B方法1实现");
            }
            public override void PrimitiveOperation2()
            {
                Console.WriteLine("具体类B方法2实现");
            }
        }
    }
    View Code

    测试代码:

                AbstractClass ac;
                ac = new ConcreteClassA();
                ac.TemplateMethod();
                ac = new ConcreteClassB();
                ac.TemplateMethod();
    View Code
  • 相关阅读:
    ZJU 1610
    zju1484
    字符串赋值与初始化
    内核线程、内核级线程(轻量级进程)和用户级线程
    Mysql基础
    结构体的sizeof
    对象属性值读取问题
    返回引用类型
    操作符重载为成员函数、非成员函数与友元函数的区别
    运算符优先级
  • 原文地址:https://www.cnblogs.com/uptothesky/p/5256823.html
Copyright © 2011-2022 走看看