扩展方法
有许多方法扩展类,如果有类的源代码,集成就是给对象添加功能的好方法,但是如果没有源代码,该怎么办,此时可以使用扩展方法,它允许改变一个类,但不需要类的源代码。
namespace Chaper3.Extensions
{
public static class MoneyExtension
{
public static void AddToAmount(this Money money,decimal amountToAdd)
{
money.Amount+=amountToAdd;
}
}
}
cash1.AddToAmount(10M);
{
public static class MoneyExtension
{
public static void AddToAmount(this Money money,decimal amountToAdd)
{
money.Amount+=amountToAdd;
}
}
}
cash1.AddToAmount(10M);
如果扩展方法与类中的某个方法同名,扩展方法就从来不会被调用。类中已有的实例方法优先
less is more