国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

《Essential .Net》讀書筆記 - Chapter 3

2024-07-10 12:56:19
字體:
來源:轉載
供稿:網友

chapter 3



1.         工作人員劃分了程序集以后,他們大部分時間就用來考慮類型如何工作,如何聯系了。所有的表示類型的構建(類,結構,枚舉等)最終會映射到clr的類型定義上。



2.         clr類型(clr type)是命名的可重用抽象體。clr類型的描述存放在clr模塊的元數據中,該模塊還包含是類型工作所需要的cil或者本機代碼。



3.         完全限定的clr類此哪個名包括三個部分:程序集名字、可選的命名空間前綴和類型名稱。



4.         公共類型系統比大多數編程語言所能處理的類型要寬得多。提交給ecma的cli部分被劃分為一個cts子集,它能被所有cli兼容的語言支持。這個子集叫做cls(common language specification,公共語言規范)。組件強烈推薦開發者使用符合cls的規范以增強組件的可訪性功能。cli定義了一個特性system.clscompliant,它指示編譯器對所有公有成員實施cls遵從性檢查。



5.         clr類型定義由零個或多個成員(member)組成。類型的每個成員都有自己的訪問修飾符(access modifier)控制對于成員的訪問。按實例訪問(per-instance member)/ 按類型訪問(per-type member,即static/shared等)。



6.         cts有三種基本類型的成員:字段、方法和嵌套類型。字段是一個命名的存儲單元,它隸屬于所聲明的類型。方法是一個命名的操作,它可以被調用和執行。嵌套類型則是一種簡單的輔助類型。其他類型成員(屬性、事件)是以附加元數據的形式出現的方法。



7.         類型的字段控制內存如何分配。clr使用類型的字段來決定分配多少內存給這個類型。clr會給static字段分配一次內存(類型首次加載時)。



8.         clr每次分配類型實例時,都會為non-static字段分配內存。



9.         在分配內存時,clr初始化static字段并賦予默認值。數值類型默認為零,布爾類型默認為false,引用類型為null。



10.      默認情況下,確切的內存布局是不透明的。clr使用虛擬內存布局,并且會經常重新排序字段以優化訪問和使用。



11.      const在編譯時會被內聯進所有使用它的地方(注意這樣做帶來的現象),const字段在初始化值在編譯時必須是已知的;initonly字段clr會在引用處調用它的值,initonly字段只能在聲明時或者構造函數里賦值。



12.      clr允許方法為最后一個參數使用[system.paramarrayattribute]特性。



13.      由于編譯器可能有不同的特性,所以盡量使用明確的重載。



14.      嵌套類型往往定義為輔助對象,如迭代器、序列化器。



15.      嵌套類型能防止對命名空間的污染。clr的嵌套類型總是被聲明為靜態成員,它不隸屬于任何特定的實例,嵌套類型的名字有外部類型名字限定。



16.      嵌套類型能做到對聲明類型的私有成員進行無限制訪問。



17.      靜態字段初始化順序:聲明à靜態構造函數(.cctor)。



18.      clr將靜態初始化方法的調用延遲到第一個靜態字段被訪問的時候(beforefieldinit特性)。靜態初始化方法在生成這個類的實例之前不一定會被調用。



19.      當基類型和派生類型存在同名的方法時,clr支持兩種基本的策略:按名字隱藏(hide-by-name)和按簽名隱藏(hide-by-signature)。通過在派生類的方法上上添加hidebysig元數據特性與否來確定。c#總是按簽名隱藏的。



20.      強烈推薦不要在一個non-sealed類型的構造函數中調用虛方法,因為派生類的虛方法的部分還沒有執行到,因此可能會導致不可預見的問題



21.      構造派生類時的執行順序:初始化派生類字段à構造基類à調用派生類(“構造基類”是一個遞歸的過程)。



22.      為了保證派生類正確地調用基類的構造函數,可以把基類的構造函數修飾為internal,這樣保證了只有自己寫的程序集才能夠調用該構造函數。


,歡迎訪問網頁設計愛好者web開發。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 赤水市| 永德县| 阿鲁科尔沁旗| 柞水县| 呼和浩特市| 天台县| 高青县| 财经| 柳州市| 东阳市| 文山县| 靖西县| 永登县| 社旗县| 营山县| 万宁市| 黄梅县| 扶余县| 沾益县| 黄山市| 志丹县| 富裕县| 云阳县| 灌云县| 华亭县| 舒兰市| 新余市| 英山县| 鹰潭市| 富川| 和政县| 航空| 安顺市| 东乡县| 辽阳县| 龙山县| 贵州省| 黄龙县| 柳江县| 全南县| 龙游县|