扩展方法就是在不改变类中的代码而再给类增加一个方法
C#中自由的类库其实就用了很多扩展方法:
粉红方块的下边有个小箭头,这就是扩展方法
虽然扩展方法也可以点出来,但是它不是类的成员方法,不能访问类的私有成员。
扩展方法的用法:
其实就是写一个静态类,在静态类中写一个静态方法
例如有一个Inforation类
1 public class Information 2 { 3 public String Name 4 { 5 get; 6 set; 7 } 8 public int Age 9 { 10 get; 11 set; 12 } 13 public bool Gender 14 { 15 get; 16 set; 17 } 18 }
为信息类写一个扩展方法:
1 public static class InforationExt 2 { 3 //第一个参数表示当前Hello方法是给Information类型扩展的 4 //第二个参数是Hello方法自己的参数 5 public static void Hello(this Information ifo,string adress) 6 { 7 Console.WriteLine("我叫:{0},我来自:{1}",ifo.Name,adress); 8 } 9 }
最后在主函数中调用:
1 static void Main(string[] args) 2 { 3 Information information = new Information(); 4 information.Name = "小明"; 5 information.Hello("湖北"); 6 Console.ReadLine(); 7 8 }