標籤:
C#基礎知識之三
1、 程式集間的繼承:基類必須被聲明為public、必須在工程中包括對該基類的程式集引用。
2、 對其他程式集引用和增加對using指令的區別:前者是告訴編譯器所需的類型在哪裡被定義,後者為了不必使用它們的完全限定名稱。例子:對Mydll調用
3、 成員存取修飾詞protectedinternal是對所有繼承該類或在該程式集內聲明的類可訪問。即為protected和internal的並集而不是交集。
4、 抽象成員:用abstract標記,沒有實現代碼塊,由分號代替。
5、 抽象類別只能被用作其他類的基類,不能建立抽象類別的執行個體。
6、 密封類:只能被用作獨立的類,不能被用作基類,用sealed修飾符。
7、 靜態類:用static標記,類所有成員必須是靜態,可以有一個靜態建構函式,不能被繼承,他們是密封的。
8、 擴充方法:擴充方法必須被聲明為static,所在類也必須為static,擴充方法必須包含關鍵字this作為它的第一個參數類型,並在後面跟著所擴充類的名稱。例:
static class ExtendMyData//必須是一個靜態類 { public static double Average(this Mydata md)//必須是公有的和靜態,關鍵字this,擴充類的名稱Mydata {//……. } }
9、 外部方法:用extern修飾符,在用分號取代實現;聲明和實現的串連常常使用DLLImport特性完成。例:擷取目前的目錄的字串,實現由win32系統調用。例子
10、 整數尾碼含義:23-整型;23L-長整型;23U-無符號整型;23UL-無符號長整型
11、 實數尾碼含義:236F-浮點型float;236.714-不帶尾碼是雙精確度型double。
12、 字元含義:由單引號內的字元表示組成。
13、 字串含義:由雙引號標記。分為規則字串和逐字字串,後面指雙引號內的所有字元包括轉義的都被嚴格按序列列印,唯一例外是相鄰的雙引號被解釋為單個雙引號,後者方法在字串前加@首碼。
14、 二元運算子是左結合的。賦值運算子和條件運算子是右結合的。(左結合從左向右運算。)
15、 比較分深比較和淺比較,常用的==為淺比較。
16、 遞增和遞減運算:語句執行之後,最終存放運算元的值是相同的,唯一不同的是返回給運算式的值。在前為先賦值後計算,在後為先計算後賦值。
17、 條件邏輯運算子:與&&(兩true為true); 或||(一true為true);非!(結果相反)。
18、 在條件運算與(&&)操作中使用“短路”模式,只要第一個運算元為false,第二個運算元將不會被計算。所以在第二個操作中不要帶有操作行為。
C#基礎知識之三