简单工厂的最最简单应用
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Calculate cal = factory.CreateOper ("-");
cal.A = 10;
cal.B = 20;
Console.WriteLine ( cal.GetResult());
cal = factory.CreateOper("+");
cal.A = 10;
cal.B = 20;
Console.WriteLine(cal.GetResult());
}
}
abstract class Calculate
{
double _NumA=0;
double _B=0;
public double A
{
get
{
return _NumA;
}
set
{
_NumA = value;
}
}
public double B
{
get { return _B; }
set { _B = value; }
}
public abstract double GetResult();
}
class Add : Calculate
{
public override double GetResult()
{
return A +B;
}
}
class Minus : Calculate
{
public override double GetResult()
{
return A - B;
}
}
class factory
{
public static Calculate CreateOper(string oper)
{
Calculate op=null;
switch (oper )
{
case "+":
op= new Add();
break;
case "-":
op= new Minus ();
break;
}
return op;
}
}
}