今天要總結的內容是C# 3.0的最新特性-擴充方法,它在LINQ查詢中使用得也非常多,所以很有必要總結一下,以便於我們能更好地掌握LINQ。主要從以下幾點來瞭解擴充方法。
1,什麼叫擴充方法?
故名思義,擴充方法就是在類本身所聲明的方法之外增加方法。當調用的時候就像作為類的執行個體成員來調用一樣,這就是擴充方法。
2,為什麼要聲明擴充方法?擴充方法有什麼作用?
在不修改類型定義的情況下,讓該類型獲得功能上的擴充。
3,如何聲明擴充方法?
例如:
1 class MyData
2 {
3 private double D1, D2, D3;//聲明變數
4
5 public MyData(double d1, double d2, double d3)//建構函式。初始化類的對象。
6 {
7 D1 = d1;//初始設定變數d1。
8 D2 = d2;
9 D3 = d3;
10 }
11
12 public double Sum()//聲明方法
13 {
14 return D1 + D2 + D3;
15 }
16 }
17
18 static class ExtendMyData
19 {
20 public static double Average(this MyData md)//關鍵字this,方法聲明為static。
21 {
22 return md.Sum() / 3;
23 }
24 }
25
26 class Program
27 {
28 static void Main(string[] args)
29 {
30 MyData md = new MyData(3,4,5);//建立類的對象。
31
32 Console.WriteLine("Sum:{0}",md.Sum());//調用執行個體方法
33 Console.WriteLine("Average:{0}",md.Average());//調用擴充方法
34 Console.ReadKey();
35 }
36 }
37 //程式輸出結果為:Sum:12
38 // Average:4
4,聲明擴充方法注意事項?
1> 擴充方法和擴充方法所在的類都必須聲明為static。
2> 擴充方法必須包含關鍵字作為它的第一個參數類型,並在後面跟著它所擴充的類的名稱。
以上就是今天總結的擴充方法的部分,今天晚上時間還比較充足,接下來要總結的是查詢文法和方法文法。