111,098
社区成员




public interface ICountTotal
{
decimal CountTotal();
}
public class CountTotalByLength : ICountTotal
{
private decimal _length;
private decimal _price;
public CountTotalByLength(decimal length, decimal price)
{
this._length = length;
this._price = price;
}
#region ICountTotal Members
public decimal CountTotal()
{
return this._length * this._price;
}
#endregion
}
public class CountTotalByPart : ICountTotal
{
private decimal _p1;
private decimal _p2;
private decimal _p3;
public CountTotalByPart(decimal p1, decimal p2, decimal p3)
{
this._p1 = p1;
this._p2 = p2;
this._p3 = p3;
}
#region ICountTotal Members
public decimal CountTotal()
{
return _p1 + _p2 + _p3;
}
#endregion
}
public class Context
{
ICountTotal count;
public Context(ICountTotal ict)
{
this.count = ict;
}
public decimal CountTotal()
{
return count.CountTotal();
}
}
class Program
{
static void Main(string[] args)
{
Context c1 = new Context(new CountTotalByLength(10, 50));
Console.WriteLine("第一种价:" + c1.CountTotal().ToString());
Context c2 = new Context(new CountTotalByPart(10, 20, 30));
Console.WriteLine("第二种价:" + c2.CountTotal().ToString());
}
}