首页 > 技术文章 > 扩展方法

tuibian 2014-04-08 21:56 原文

扩展方法就是在不改变类中的代码而再给类增加一个方法

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         }

 

推荐阅读