Clr via C 讀書筆記 Cp12泛型

2022-01-15 19:17:38 字數 421 閱讀 1683

generic;

system.collections.generic;

開放型別,封閉型別;每個封閉型別都有自己的靜態成員;

新的型別派生自泛型型別派生的那個類;實參指定和派生層次沒有關係;

使用using和區域性隱式型別來解決;

了解就可以了

擁有泛型的那些好處

類似泛型介面

不變數=泛型型別引數不能更改;

逆變數=泛型引數可以從乙個基類更改該類的派生類;in;引數

協變數=泛型型別引數可以從乙個派生類更改為它的基類,out;返回型別

可以提高介面的靈活性;

泛型方法可以定義在泛型類當中,使用泛型類的t,也可以自己定義自己的t,甚至在非泛型類當中定義它;

約束其實可以理解成盡可能的提高介面的具體性,從而可以使用到更多的這種具體性的操作;

Clr via C 讀書筆記 Cp16陣列

一維陣列,多維陣列,交錯陣列 引用型別 p338的圖非常的清楚地描述了值型別和引用型別在託管堆中的關係 越界檢查 陣列初始化器 四種寫法 string names new string var dogs new string var cats new string datas 陣列型別必須維數相同,...

Clr via C 讀書筆記 Cp10屬性

屬性的本質就是方法,只是看起來像字段罷了 就是一般屬性 字段一般要private,然後通過設定訪問方法 訪問器來訪問 屬性是方法語法變種 getset不一定要訪問支援字段 編譯的時候會自動生成對應的方法和對映關係 可以為以後建立複雜一點的屬性做好佔位,隨時更換。作者不喜歡自動屬性 作者甚至不喜歡屬性...

Clr via C 讀書筆記 Cp13介面

介面只提供簽名,不提供實現 等效於契約 凡事能使用具名介面的地方都能夠使用實現了的介面。定義很簡單,fcl也提供了大量的現成介面供使用 類不能多繼承,介面可以 變數可以是介面,但是只能呼叫這個介面約定的操作 隱式介面的操作可以通過類變數進行,而顯示介面的實現,只能通過介面型別的變數進行 協變和逆變 ...