c#编程定义分数类实现用符号+- */完成分数的加减乘除
来源:学生作业帮助网 编辑:作业帮 时间:2024/05/17 00:50:59
c#编程定义分数类实现用符号+- */完成分数的加减乘除
c#编程定义分数类实现用符号+- */完成分数的加减乘除
c#编程定义分数类实现用符号+- */完成分数的加减乘除
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Reflection;
namespace lib_DesignPattern.Creational.SimpleFactory
{
public abstract class Calculator
{
public double NumA { get; set; } //数字A.
public double NumB { get; set; } //数字B.
public abstract double GetResult(); // 抽象方法.获取二元运算结果.
}
// 加法子类,.
public class Add :Calculator
{
public override double GetResult()
{
return NumA + NumB;
}
}
//减法子类.
public class Sub :Calculator
{
public override double GetResult()
{
return NumA - NumB;
}
}
//乘法子类.
public class Mul :Calculator
{
public override double GetResult()
{
return NumA * NumB;
}
}
//除法子类.
public class Div :Calculator
{
public override double GetResult()
{
if (NumB != 0)
{
return NumA / NumB;
}
else
{
throw new OverflowException("除数不能为0!");
}
}
}
// 简单工厂.根据运算符实例化具体运算子类.
public class CalculatorFactory
{
public static Calculator GetCal(string op)
{
return Assembly.Load("lib_DesignPattern").CreateInstance(string.Format("lib_DesignPattern.Creational.SimpleFactory.{0}",op)) as Calculator;
}
}
}
然后调用工厂就行了.