首页 > 代码库 > 《C#高级编程》学习笔记

《C#高级编程》学习笔记

  • 3.8 扩展方法

扩展方法是静态方法,它是类的一部分,但实际上没有放在类的源代码中。由于某种原因,程序集最初的源代码不能直接修改。此时必须做的所有工作就是创建一个静态类

 1 namespace Wrox
 2 {
 3     public static class MoneyExtension
 4     {
 5         public static void AddToAmount(this Money money, decimal amountToAdd)
 6         {
 7             money.Amount += amountToAdd;
 8         }
 9     }
10 }        

 

注意AddToAmount()方法的参数。对于扩展方法,第一个参数是要扩展的类型,它放在this 关键字的后面。这告诉编译器,这个方法是Money 类型的一部分。在这个例子中,Money 是要扩展的类型。在扩展方法中,可以访问所扩展类型的所有公有方法和属性。

《C#高级编程》学习笔记