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

    代码
    using System;
    using System.Collections.Generic;

    public class Calc
    {
        
    public virtual double DoDalc(double p1,double p2)
        {
            
    return 0;
        }
    }

    public class Add:Calc
    {
        
    public override double DoDalc(double p1,double p2)
        {
            
    return p1+p2;
        }
    }
    public class Minus:Calc
    {
        
    public override double DoDalc(double p1,double p2)
        {
            
    return p1-p2;
        }
    }
    public class  Multiply:Calc
    {
        
    public override double DoDalc(double p1,double p2)
        {
            
    return p1*p2;
        }
    }
    public class Devide:Calc
    {
        
    public override double DoDalc(double p1,double p2)
        {
            
    if(p2>-0.00000000001 &&p2<0.00000000001)
            {
                
    return 0;
            }
            
    else
            {
                
    return p1/p2;
            }
        }
    }

    public class SimpleCalculator
    {
        
    public static Calc CreateCalculator(string strOperator)
        {
            Calc mycalc
    =null;
            
    switch(strOperator)
            {
                
    case "+":
                    mycalc
    =new Add();
                    
    break;
                
    case "-":
                    mycalc
    =new Minus();
                    
    break;
                
    case "*":
                    mycalc
    =new Multiply();
                    
    break;
                
    case "/":
                    mycalc
    =new Devide();
                    
    break;
                
    default:
                    mycalc
    =new Calc();
                    
    break;
            }
            
    return mycalc;
        }
    }

    public class MyClass
    {
        
    public static void Main()
        {
            Calc mycalc
    =SimpleCalculator.CreateCalculator("*");
            
    double myresult=mycalc.DoDalc(1.0,20);
            Console.WriteLine(myresult);
            Console.ReadLine();
        }
    }


  • 相关阅读:
    如何利用好chrome控制台这个神器好好调试javascript代码
    关于前端学习和笔试面试的总结
    当推荐算法开源包多如牛毛,为什么我们还要专门的推荐算法工程师
    关键词匹配项目深入研究(二)- 分表思想的引入
    PHP如何快速读取大文件
    整理了一些有用的网址,不喜勿喷
    Chrome控制台 JS调试的一些小技巧
    安装最新版本的PHPUnit后,不能使用
    PHP API接口测试小工具
    PHP Log时时查看小工具
  • 原文地址:https://www.cnblogs.com/mikechang/p/1705189.html
Copyright © 2011-2022 走看看