了解了這些東西,熟悉了運用基本都是高工級別的了,其他修修補補就行了。。。。
1、三種預定義特性:attributeUsage、Conditional、obsolete,允許創建自定義特性,派生自System.Attribute類
2、委托和事件
2.1、將方法作為方法的參數:委托是一個類,它定義了方法的類型,使得可以將方法當作另一個方法的參數來進行傳遞
2.2、將方法綁定到委托:
可以將多個方法賦給同一個委托,或者叫將多個方法綁定到同一個委托,當調用這個委托的時候,將依次調用其所綁定的方法
2.3、聲明一個事件不過類似於聲明一個進行了封裝的委托類型的變量而已,事件應該由事件發布者觸發,而不應該由事件的客戶端(客戶程序)來觸發
2.4、很多的委托定義返回值都為 void,如果定義了返回值,那么多個訂閱者的方法都會向發布者返回數值,結果就是后面一個返回的方法值將前面的返回值覆蓋掉了,因此,實際上只能獲得最后一個方法調用的返回值
2.5、四種委托類型:
Delegate至少0個參數,至多32個參數,可以無返回值,也可以指定返回值類型;
Action是無返回值的泛型委托,至少0個參數,至多16個參數;
Func是有返回值的泛型委托,Func<T1,T2,,T3,int> 表示傳入參數為T1,T2,,T3(泛型)返回值為int的委托,Func至少0個參數,至多16個參數,根據返回值泛型返回。必須有返回值,不可void;
predicate 是返回bool型的泛型委托,Predicate有且只有一個參數,返回值固定為bool;
3、流與文件的操作、多線程、程序集以及反射、XML文檔處理
4、托管代碼以及非托管代碼
4.1、托管代碼(Managed Code)就是中間語言(IL)代碼,在公共語言運行庫(CLR)中運行。編譯器把代碼編譯成中間語言,當方法被調用時,CLR把具體的方法編譯成適合本地計算機運行的機器碼,並且將編譯好的機器碼緩存起來,以備下次調用使用。隨着程序集的運行,CLR提供各種服務:內存管理,安全管理,線程管理,垃圾回收,類型檢查等等
4.2非托管代碼,直接編譯成目標計算機碼,在公共語言運行庫環境的外部,由操作系統直接執行的代碼,代碼必須自己提供垃圾回收,類型檢查,安全支持等服務。如需要內存管理等服務,必須顯示調用操作系統的接口,通常調用Windows SDK所提供的API來實現內存管理
5、Web Service、基於Sockets模型的網絡編程