首先,在C#中,多态的体现是什么?虚函数、抽象方法、接口。废话不多说,直接上代码:
#region 多态重构switch...case....
public abstract class ShippingCalculation
{
public abstract decimal Calculate();
}
public class AlaskShippingCalculation : ShippingCalculation
{
public override decimal Calculate()
{
return 15m;
}
}
public class NewYorkShippingCalculation : ShippingCalculation
{
public override decimal Calculate()
{
return 10m;
}
}
public class FloridaShippingCalculation : ShippingCalculation
{
public override decimal Calculate()
{
return 3m;
}
}
public class Context
{
public decimal ProcessCalculate(ShippingCalculation shippingCalculation)
{
return shippingCalculation.Calculate();
}
}
#endregion#reg