C#入門之C#特點淺析
C#入門首先知道C#怎么讀的哦,C#(發(fā)音為“See Sharp”)是簡單、現(xiàn)代、面向?qū)ο蠛皖愋桶踩木幊陶Z言。C#起源于C語言家族,因此,C,C++和Java的程序員很快就能熟悉它。C#已經(jīng)獲得了ECMA International和ISO/IEC的國際標(biāo)準(zhǔn)認(rèn)證,它們分別是ECMA-334標(biāo)準(zhǔn)和ISO/IEC 23270標(biāo)準(zhǔn)。Microsoft用于.NET框架的C#編譯器就是根據(jù)這兩個標(biāo)準(zhǔn)實現(xiàn)的。
C#入門之C#的理解:C#是面向?qū)ο蟮恼Z言,但C#進一步支持面向組件(component-oriented)的編程?,F(xiàn)代軟件設(shè)計越來越依賴于自包含(self-contained)和自描述(self-describing)功能包形式的軟件組件。這種組件的關(guān)鍵之處在于它們提供了帶有屬性、方法和事件的編程模型;它們還具有提供關(guān)于組件聲明信息的特性(attribute);同時,它們編入了自己的文檔。C#提供語言構(gòu)件來直接支持這些概念,使得C#在創(chuàng)建和使用軟件構(gòu)件方面非常自然。
C#入門之C#特征支持創(chuàng)建健壯和持久的應(yīng)用程序:垃圾回收(garbage collection)特征可以自動回收無用對象所占的內(nèi)存空間;異常處理(exceptionhandling)提供了一個結(jié)構(gòu)化和可擴展的方式,用于錯誤檢測和恢復(fù);語言的類型安全(type-safe)設(shè)計了防止引用非初始化變量、數(shù)組下標(biāo)越界,以及執(zhí)行未檢查的類型轉(zhuǎn)換等情形的發(fā)生。
C#具有統(tǒng)一類型系統(tǒng)。所有的C#類型,包括諸如int和double的基本數(shù)據(jù)類型,都繼承于單個根類型object。因此,所有類型都共享一組通用操作,并且,任何類型的值都能夠以一致的方式存儲、傳遞和操作。C#支持用戶自定義引用類型和值類型,既允許對象的動態(tài)分配,也允許輕量結(jié)構(gòu)的內(nèi)聯(lián)存儲。
為了保證C#程序和類庫總能以兼容的方式升級,在C#的設(shè)計中十分強調(diào)版本控制。許多程序語言不太重視這一點,導(dǎo)致采用那些語言編寫的程序常常因為其所依賴的類庫的更新而無法工作。C#的設(shè)計方面直接受到版本考慮的影響,包括分開的virtual和override修飾符、方法重載的規(guī)則,以及支持對顯式接口成員的聲明。
本章的其他部分將描述C#語言的本質(zhì)特征。盡管后面的章節(jié)將更為詳細(xì),有時甚至是細(xì)致入微地描述這些規(guī)則和異常,但是本章力求對整個C#做一個簡單明了的說明。其意圖是向讀者提供對語言的入門介紹,以便于讀者上手編寫程序和閱讀后面的章節(jié)。
學(xué)習(xí)某種編程語言,通常采用“Hello,World”程序作為起步。下面是C#入門程序的:
- using System;
- class Hello
- {
- static void Main(){
- Console.WriteLine("Hello,World");
- }
- }
C#源程序文件一般用.cs作為擴展名。假定“Hello,World”源程序文件被存為hello.cs,那么,使用下面的命令行就能通過Microsoft C#編譯器編譯這個程序:
csc hello.cs
它將產(chǎn)生一個名為hello.exe的可執(zhí)行程序集。當(dāng)程序運行時,輸出結(jié)果如下:
- Hello,World
“Hello,World”程序開頭是using指令,引用了System命名空間(namespace)。命名空間提供了C#程序和類庫分層次的組織手段。命名空間包含類型和其他命名空間,例如,System命名空間包含若干類型(如程序中引用的Console類),以及若干其他命名空間(如IO和Collections)。如果通過using指令引用給定命名空間,就可以對命名空間的成員進行非限定的使用。正是由于程序中使用了using指令,才能夠?qū)ystem.Console.WriteLine簡寫為Console.WriteLine。
“Hello,World”程序中聲明的Hello類只有一個成員,即名為Main的方法。Main方法是用static修飾符聲明的。靜態(tài)方法不同于實例方法,后者需要使用關(guān)鍵字this來引用特定的對象實例,而靜態(tài)方法的操作不需要引用特定的對象。作為約定,被命名為Main的靜態(tài)方法充當(dāng)程序的入口點。
程序輸出是由System命名空間下Console類的WriteLine方法產(chǎn)生的。這個類是由.NET框架類庫提供的,默認(rèn)情況下,類庫被Microsoft C#編譯器自動引用。注意C#本身沒有單獨的運行時類庫。事實上,.NET框架是C#的運行時類庫。
C#入門的一些基本概念和C#簡單程序的分析就向你介紹到這里,希望對你了解和學(xué)習(xí)C#入門有所幫助。
【編輯推薦】