zoukankan      html  css  js  c++  java
  • 二.简单工厂

    简单工厂:

           简单工厂处理的是如何选择我们override的虚方法。

    public virtualdouble GetResult()

            {

                double result=0;

                return result;

            }

    不一定是虚方法,抽象方法也可以:

    abstract  classCashSuper

        {

            public abstract doubleacceptCash(double money);

    }

    父类,虚方法和子类,具体方法 —— 为第一篇:虚方法的代码

    调用工厂:

    class Program

        {

           static void Main(string[] args)

           {

               try

               {

                    Operate op=new Operate ();

                    Console.WriteLine("输入运算符");

                    //此处OP重新赋值,属性值也重新赋值

                    op= Factory.SetOperate(Console.ReadLine());

                    Console.WriteLine("输入数字1");

                    op.Num1 =Convert.ToDouble(Console.ReadLine());

                    Console.WriteLine("输入数字2");

                    op.Num2 = Convert.ToDouble(Console.ReadLine());

                   Console.WriteLine(op.GetResult());

               }

               catch (Exception ex)

               {

                    Console.WriteLine("错误:"+ex.Message );

               }

               Console.ReadKey();

            }

    }

    工厂类:

       class Factory

        {

           public static Operate SetOperate(string operate)

           {

               Operate oper = null;

               switch (operate)

               {

                    case "+":

                        oper=new OperateAdd();

                       break;

                    。。。。。。

               }

               return oper;

           }

        }

  • 相关阅读:
    具体解释协方差与协方差矩阵
    百度地图SDK for Android v2.1.3全新发布
    奇妙的等式
    Canny边缘检测及C++实现
    移动火柴问题
    移动火柴问题
    奇妙的等式 && 精妙的证明(二)
    奇妙的等式 && 精妙的证明(二)
    拉马努金恒等式
    拉马努金恒等式
  • 原文地址:https://www.cnblogs.com/yaoge/p/1815220.html
Copyright © 2011-2022 走看看