本文共 1623 字,大约阅读时间需要 5 分钟。
using System;// 可维护,可复用,可扩展,灵活性好namespace 简单工厂模式{ // 运算类 public class Operation { private double numberA = 0; public double NumberA { get { return numberA; } set { numberA = value; } } private double numberB = 0; public double NumberB { get { return numberB; } set { numberB = value; } } public virtual double GetResult() { double testResult = 0; return testResult; } } // 加法 class OperationAdd:Operation { public override double GetResult () { double addResult = 0; addResult = NumberA + NumberB; return addResult; } } // 减法 class OperationSub :Operation { public override double GetResult () { double subResult = 0; subResult = NumberA - NumberB; return subResult; } } // 乘法 class OperationMul :Operation { public override double GetResult () { double mulResult = 0; mulResult = NumberA * NumberB; return mulResult; } } // 除法 class OperationDiv :Operation { public override double GetResult () { double divResult = 0; divResult = NumberA / NumberB; return divResult; } } public class OperationFactory { public static Operation createOperate(string operate) { Operation oper = null; switch (operate) { case "+" : oper = new OperationAdd(); break; case "-": oper = new OperationSub(); break; case "*": oper = new OperationMul(); break; case "/": oper = new OperationDiv(); break; } return oper; } } class MainClass { public static void Main (string[] args) { Operation oper; oper = OperationFactory.createOperate("/"); oper.NumberA = 12; oper.NumberB = 2; Console.WriteLine (oper.GetResult()); } }}
转载地址:http://xukii.baihongyu.com/