C#基礎知識之8
由朱朱編寫,轉載請注明出自朱朱家園http://blog.csdn.net/zhgl7688
1、 枚舉數類型有3種:非泛型接口(IEnumerator/IEnumerable接口)、泛型接口(IEnumerator<T>/IEnumerable<T>接口)、不使用接口。
2、 IEnumerator接口包括3個函數成員:current返回當前位置項(只讀屬性),movenext把枚舉數位置前到下1項的方法、返回布爾值說明新位置是不是有效,reset方法把位置重置為原始狀態。
3、 創建非泛型接口的枚舉數類,必須聲明實現IEnumerator接口的類,其接口類中有3個方法:Current、MoveNext、Reset,它是System.Collections命名空間的成員。
4、 IEnumerable接口只有1個成員GetEnumerator方法,它返回對象的枚舉數。
5、 泛型枚舉接口與非泛型枚舉接口的區分:前者實現了current屬性,返回object的援用。后者返回實際類型的對象。
6、 泛型枚舉接口從兩個接口繼承:非泛型IEnumerator接口和IDisposable接口。
7、 IDisposable接口只有Dispose的類型為void的無參數方法,用于釋放非托管資源。
8、 迭代器是有1個或多個yield語句的代碼塊,有3種:方法主體,訪問器主體,運算符主體。
9、 迭代器有兩個特殊語句:yieldreturn語句履行了序列中返回的下1項。Yield break語句指定在序列中沒有更多項。
10、 迭代器需要System.Colletions.Generic命名空間,用using援用。
11、
12、 泛型拜托:聲明泛型拜托在拜托名稱和拜托參數列表之間,用尖括號中放類型參數列表。
13、 類型參數列表包括:返回值、形參數表、束縛子句。拜托返回的類型在參數表的最后1個。
14、 編譯器可以從方法參數中推斷類型參數時,可以省略類型參數和調用中的尖括號。
15、 泛型類的擴大方法:必須聲明為static,靜態類的成員,第1個參數類型中必須有關鍵詞this、后面是擴大的泛型類的名字。
16、 LINQ是集成到C#和VB.NET用于提供查詢數據能力的1個新特性。以數據庫查詢的方式 查詢數據集合。允許從數據庫、程序對象集合和XML文檔中查詢數據。
由朱朱編寫,轉載請注明出自朱朱家園http://blog.csdn.net/zhgl7688