星空网 > 软件开发 > ASP.net

01—简单工厂

 
描述:封装一基类,都继承基类,当需要实例化不同对象时,可以通过一个工厂类实现。
实例:我通过一个计算器小程序来实现。
   
  运算基类
 
  /// <summary>  /// 运算类  /// </summary>  public class Operaction  {    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;    }  }

 


  运算子类,我统一放在OperactionAll.cs中了

  /// <summary>  /// 加  /// </summary>  class OperactionAdd : Operaction  {    /// <summary>    /// 运算方法    /// </summary>    /// <returns></returns>    public override double GetResult()    {      double result = 0;      result = NumberA + NumberB;      return result;    }  }  /// <summary>  /// 减  /// </summary>  class OperactionSub : Operaction  {    public override double GetResult()    {      double result = 0;      result = NumberA - NumberB;      return result;    }  }  /// <summary>  /// 乘  /// </summary>  class OperactionMul : Operaction  {    public override double GetResult()    {      double result = 0;      result = NumberA * NumberB;      return result;    }  }  /// <summary>  /// 除  /// </summary>  class OperactionDiv : Operaction  {    public override double GetResult()    {      double result = 0;      result = NumberA / NumberB;      return result;    }  }

 

  工厂类

  /// <summary>  /// 工厂类  /// </summary>  public class OperactionFactory  {    //创建实例的方法    public static Operaction CreateOperaction(string Operacte)    {      Operaction oper = null;      switch (Operacte)      {        case "+":          oper = new OperactionAdd();          break;        case "-":          oper = new OperactionSub();          break;        case "*":          oper = new OperactionMul();          break;        case "/":          oper = new OperactionDiv();          break;      }      return oper;    }  }

 

  客户端调用

  /// <summary>  /// 客户端调用  /// </summary>  class Program  {    static void Main(string[] args)    {      Operaction oper = null;      oper = OperactionFactory.CreateOperaction("-"); //通过工厂创建实体      oper.NumberA = 10;      oper.NumberB = 5;      double result = oper.GetResult();//运算方法      Console.WriteLine(result);      Console.ReadLine();    }  }

 

  完了。





原标题:01—简单工厂

关键词:

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

SUAOKI:https://www.goluckyvip.com/tag/25786.html
Subject Keywords:https://www.goluckyvip.com/tag/25788.html
Submarino:https://www.goluckyvip.com/tag/25789.html
苹果市值蒸发:https://www.goluckyvip.com/tag/2579.html
Substack:https://www.goluckyvip.com/tag/25791.html
succulents australia sales:https://www.goluckyvip.com/tag/25792.html
instagram竞品“TikTok Notes”在加拿大和澳大利亚上线:https://www.goluckyvip.com/news/220211.html
青岛黄岛景点门票一览 - 青岛黄岛旅游景点介绍免费:https://www.vstour.cn/a/410226.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流