zoukankan      html  css  js  c++  java
  • 一、简单工厂模式

    @#

    public class Operation  //基类
        {
            private double _numberA = 0;
            private double _numberB = 0;
            public double NumberA
            {
                get
                { return _numberA; }
                set
                {
                    _numberA = value;
                }
            }
            public double NumberB
            {
                get
                { return _numberB; }
                set
                {
                    _numberB = value;
                }
            }
            public virtual double GetResult()
            {
                double result = 0;
                return result;
            }
        }

    ##

        class OperationAdd:Operation    //加法类
        {
            public override double GetResult()
            {
                double result = 0;
                result = NumberA + NumberB;
                return result;
            }
        }
        class OperationSub:Operation    //减法类
        {
            public override double GetResult()
            {
    
                double result = 0;
                result = NumberA - NumberB;
                return result;
            }
        }

    ##

    public class OperationFactory   //工厂类
        {
            public static Operation CreateOperate(string operate)
            {
                Operation oper = null;
                switch(operate)
                {
                    case "+":
                        oper = new OperationAdd();
                        break;
                    case "-":
                        oper = new OperationSub();
                        break;                  
                }
                return oper;
            }
        }

    ##

        class Program   //前台代码
        {
            static void Main(string[] args) 
            {
                Operation oper = OperationFactory.CreateOperate("+");
                oper.NumberA = 20;
                oper.NumberB = 80;
                double result = oper.GetResult();
                Console.WriteLine(result);
            }
        }
  • 相关阅读:
    有关乞讨的人
    雪之国
    Direction
    Qt表格
    单例模式
    工作
    Qt模型model、视图view、代理
    Qt数据库sqlite
    QDateTime
    跨工程传输数据
  • 原文地址:https://www.cnblogs.com/tinaluo/p/6908182.html
Copyright © 2011-2022 走看看