偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

《C#圖解教程》讀書心得之C#語(yǔ)言

開發(fā) 后端
本文是作者通過(guò)閱讀《C#圖解教程》這本書所作的讀書筆記,主要講C#語(yǔ)言的重要內(nèi)容整理成條,供大家參考。

這本書講解C#語(yǔ)言十分詳細(xì),我將其中的重要內(nèi)容整理成條款,以備忘。

1..NET 由三部分組成:CLR ,編碼工具和 BCL 。CLR 負(fù)責(zé)內(nèi)存管理、代碼安全驗(yàn)證、代碼執(zhí)行、垃圾收集。.NET 提供平臺(tái)調(diào)用( P/Invoke ), 允許調(diào)用 Windows API ,而且還可以和 COM 進(jìn)行交互操作。

2. .NET 開發(fā)人員可以不必了解 COM 的知識(shí),無(wú)需考慮諸如 IUnknown 接口,類型庫(kù),引用計(jì)數(shù),注冊(cè)表以及 HRESULT(COM 使用 HRESULT) 數(shù)據(jù)類型返回運(yùn)行時(shí)錯(cuò)誤代碼,而 .NET 不使用 HRESULT ,因?yàn)樗械倪\(yùn)行時(shí)錯(cuò)誤都會(huì)產(chǎn)生異常。

3. .NET 語(yǔ)言的編譯器接受源代碼文件,輸出文件為程序集。程序集中的代碼并不是本地代碼,而是CIL 。程序集中包含CIL ,程序集中使用的類型的元數(shù)據(jù)以及對(duì)其他程序集引用的元數(shù)據(jù)。

4. CLR 在運(yùn)行時(shí)首先檢查程序集的安全特性,然后在內(nèi)存中分配空間,再把程序集中被調(diào)用到的 代碼送進(jìn) JIT 。程序集中的 CIL 只有在被調(diào)用到時(shí)才會(huì)被 JIT 編譯成本地代碼,然后就被緩存起來(lái)以備在后來(lái)的程序中執(zhí)行,即不被調(diào)用的代碼不會(huì)被編譯成本地代碼,而且被調(diào)用到的代碼只被編譯一次。一旦CIL 被編譯成本地代碼,CLR 就會(huì)在運(yùn)行時(shí)進(jìn)行管理,如:釋放內(nèi)存、檢查數(shù)組邊界、檢查參數(shù)類型、管理異常等。

5.運(yùn)行在CLR ,并且在運(yùn)行時(shí)受CLR 控制的代碼叫做托管代碼,反之為非托管代碼。

6. CLI( 公共語(yǔ)言基礎(chǔ)結(jié)構(gòu) ) 是一組闡述了系統(tǒng)的架構(gòu)、規(guī)則和約定的規(guī)范。包含 CTS: 定義了一組豐富的內(nèi)置類型,定義了每種類型確定的詳細(xì)的特性 , 而且所有支持 .NET 的語(yǔ)言提供的類型通常會(huì)映射到 CTS 中已定義的內(nèi)置類型集的某一個(gè)特殊子集;CLS :詳細(xì)說(shuō)明了支持 .NET 語(yǔ)言的規(guī)則、屬性和行為,其主題包括數(shù)據(jù)類型、類結(jié)構(gòu)和參數(shù)傳遞。

7. 任何以 .NET 平臺(tái)作為目標(biāo)的語(yǔ)言必須建立它的數(shù)據(jù)類型與CTS 的類型間的映射。所有 .NET 語(yǔ)言共享這一類型系統(tǒng),實(shí)現(xiàn)他們之間無(wú)縫的互操作,這個(gè)方案提供了語(yǔ)言之間的繼承性。

8. 由于CLS 是CTS 的子集 , 這意味著一種語(yǔ)言特征可能符合CTS 標(biāo)準(zhǔn),但卻超過(guò)了CLS 的規(guī)范,如:C#語(yǔ)言支持無(wú)符號(hào)數(shù)字類型,該特征能通過(guò) CTS 測(cè)試,但 CLS 卻僅僅識(shí)別有符號(hào)數(shù)字類型。因此,如果用戶在一個(gè)組件類使用 C# 的無(wú)符號(hào)類型,就可能無(wú)法與不支持無(wú)符號(hào)類型的語(yǔ)言(如 VB.NET )設(shè)計(jì)的組件實(shí)現(xiàn)互操作,但并非不可能,實(shí)際上,用戶能夠安全實(shí)現(xiàn)含有 private 成員的組件,CLS 兼容性問(wèn)題。但如果用戶需要 .NET 語(yǔ)言的互操作性,那么用戶的組件中的 public 成員必須完全符合 CLS 規(guī)范。

9. @ 字符只能放在標(biāo)識(shí)符的首位,標(biāo)識(shí)符的命名風(fēng)格有兩種:Pascal 風(fēng)格,如:CarDeck ,建議用于類型名和成員名;Camel 風(fēng)格,如:totalCycleCount ,建議用于本地變量和方法參數(shù)。

10.兩個(gè)公共約定:字段名稱使用下劃線開頭:example 或使用 m_ 開頭: m_example 。

11. 在C#語(yǔ)言中,可以使用任意的占位符和任意數(shù)量的值,值可以以任何順序使用,值可以在格式字符串中替換任意次。例如: Console.WriteLine(”Three integers are {1}, {0}, {1}.”, 3, 6); 輸出為 Three integers are 6, 3,6.

12. 占位符不能引用值列表以外位置的值,如果這樣做了,不會(huì)產(chǎn)生編譯錯(cuò)誤,但會(huì)產(chǎn)生運(yùn)行時(shí)錯(cuò)誤 ( 異常 ) 。

【編輯推薦】

  1. 四種C#參數(shù)類型簡(jiǎn)介
  2. Java與C#的不同之處
  3. 學(xué)習(xí)C#程序集
  4. C#和ADO.NET建立數(shù)據(jù)綁定網(wǎng)格
  5. 介紹C# 4.0新特性dynamic
責(zé)任編輯:book05 來(lái)源: csdn
相關(guān)推薦

2009-08-26 17:22:09

C#語(yǔ)言

2009-09-02 17:10:45

C#語(yǔ)言入門

2009-08-21 08:59:35

C#語(yǔ)言規(guī)范

2009-08-13 17:04:09

C#語(yǔ)言C#程序

2009-08-25 17:59:49

C#入門

2009-08-19 16:50:32

Visual C#C#語(yǔ)言特性

2009-08-13 09:32:00

C#讀取TXT文件

2021-03-15 08:18:23

C#反射模塊

2009-09-11 10:44:55

C#語(yǔ)言

2009-08-25 17:15:50

C#隱藏C#重寫C#重載

2009-08-25 17:21:31

C#索引

2009-08-03 13:34:06

自定義C#控件

2009-08-18 10:59:46

C#枚舉類型

2011-01-04 09:34:23

LambdaC#

2011-07-06 09:44:34

C#

2011-07-06 09:46:56

C#

2009-08-03 16:28:53

Java語(yǔ)言與C#語(yǔ)言

2009-07-31 17:28:35

C#語(yǔ)言調(diào)用DLL

2009-08-26 09:26:12

C#語(yǔ)言層次劃分

2009-08-21 08:52:40

C#語(yǔ)言命名
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)