.net組件技術

來源:互聯網
上載者:User

標籤:style   blog   http   io   os   使用   java   sp   檔案   

.NET是什嗎?

  •.NET是一個平台,而不是一種語言。  •.NET是Microsoft的用以建立XML Web服務(下一代軟體)平台,該平台將資訊、裝置和人以一種統一的、個人化的方式聯絡起來。 

公用語言運行庫(CLR)

  •公用語言運行庫,即Common Language Runtime,簡稱CLR。   •CLR是.NET Framework的核心,通常在CLR控制下啟動並執行代碼稱為Managed 程式碼(managed code)   •在CLR執行編寫好的原始碼之前,需要編譯它們。在.NET中編譯分為兩個階段:    1、把原始碼編譯為Microsoft中繼語言(IL);    2、CLR把IL編譯為平台專用的代碼。 

.NET中的編譯過程(CLR)

中繼語言(IL)

  •Microsoft中繼語言和java位元組碼一樣都是低級語言,文法簡單,能快速轉換為本地機器碼。這種設計的通用文法有很重要的優點:平台無關性、提高效能和語言的互通性。   •中繼語言的主要特徵:      1、物件導向和使用介面    2、實值型別和參考型別之間的顯著差異    3、強資料類型化    4、異常處理    5、使用特性 

一般型別系統(CTS)

  •CTS定義了可以在IL中使用的預定義資料類型,所有面向.NET Framework的語言都可以產生基於這些類型的編譯代碼。  •例子:假定VB定義的一個類中包含一個傳回值為Integer類型的方法,C#定義的一個類包含這個類的一個執行個體,要它的調用傳回值為Integer類型的方法,而C#中沒有名稱為Integer的資料類型,這個問題在.NET中是怎麼處理的呢?  •對於這個問題,VB中的Integer實際上是一個32位有符號的整數,它實際映射為中繼語言類型int32,因此在IL代碼中就指定這種資料類型,C#編譯器就可以使用這種類型,所以就不會有問題了。  •CTS不僅指定了基礎資料型別 (Elementary Data Type),還定義了一個類型階層,其中包含設計合理的位置,在這些位置上,代碼允許定義自己的類型。    

Common Language Specification(CLS)

  •Common Language Specification(Common Language Specification, CLS)和一般型別系統一起確保語言的互通性。  •CLS是一個最低標準集,所有面向.NET的編譯器都必須支援它。  •例子:IL是區分大小寫語言,但VB是不區分大小寫語言。CLS通過指定CLS相容代碼不適用任何只根據大小寫區分的名稱,解決了不區分大小寫問題。因此,VB代碼可以與CLS相容代碼一起使用。   •CLS的兩種工作方式:    1、各個編譯器的功能不必強大到支援.NET的所用功能;    2、如果限制類只能使用CLS相容的特性,就要保證用其他相容語言編寫的代碼可以使用這個類。 

程式集(Assembly)

  •程式集(assembly)是包含編譯好的、面向.NET Framework的代碼的邏輯單元。   •程式集是完全自描述的,它是一個邏輯單元而不是物理單元,可以儲存在多個檔案中。如果一個程式集儲存在多個檔案中,其中就會有一個包含進入點的主檔案,該檔案描述了程式集中的其他檔案。   •程式集的結構:    1、組件中繼資料    2、類型中繼資料    3、MSIL代碼    4、資源       

.net組件技術

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.