


下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第C#語言入門基礎(chǔ)介紹“Hello,World”程序始于引用System命名空間的using指令。命名空間提供了一種用于組織C#程序和庫的分層方法。命名空間包含類型和其他命名空間。例如,System命名空間包含許多類型(如程序中引用的Console類)和其他許多命名空間(如IO和Collections)。借助引用給定命名空間的using指令,可以非限定的方式使用作為相應(yīng)命名空間成員的類型。由于使用using指令,因此程序可以使用Console.WriteLine作為System.Console.WriteLine的簡(jiǎn)寫。
“Hello,World”程序聲明的Hello類只有一個(gè)成員,即Main方法。Main方法使用static修飾符進(jìn)行聲明。實(shí)例方法可以使用關(guān)鍵字this引用特定的封閉對(duì)象實(shí)例,而靜態(tài)方法則可以在不引用特定對(duì)象的情況下運(yùn)行。按照約定,Main靜態(tài)方法是C#程序的入口點(diǎn)。
程序的輸出是由System命名空間中Console類的WriteLine方法生成。此類由標(biāo)準(zhǔn)類庫提供。默認(rèn)情況下,編譯器會(huì)自動(dòng)引用標(biāo)準(zhǔn)類庫。
三、類型和變量
類型定義C#中的任何數(shù)據(jù)的結(jié)構(gòu)和行為。類型的聲明可以包含其成員、基類型、它實(shí)現(xiàn)的接口和該類型允許的操作。變量是用于引用特定類型的實(shí)例的標(biāo)簽。
C#有兩種類型:值類型和引用類型。值類型的變量直接包含它們的數(shù)據(jù)。引用類型的變量存儲(chǔ)對(duì)數(shù)據(jù)(稱為“對(duì)象”)的引用。對(duì)于引用類型,兩個(gè)變量可以引用同一個(gè)對(duì)象;對(duì)一個(gè)變量執(zhí)行的運(yùn)算可能會(huì)影響另一個(gè)變量引用的對(duì)象。借助值類型,每個(gè)變量都有自己的數(shù)據(jù)副本;因此,對(duì)一個(gè)變量執(zhí)行的運(yùn)算不會(huì)影響另一個(gè)變量(ref和out參數(shù)變量除外)。
標(biāo)識(shí)符為變量名稱。標(biāo)識(shí)符是不包含任何空格的unicode字符序列。如果標(biāo)識(shí)符的前綴為@,則該標(biāo)識(shí)符可以是C#保留字。在與其他語言交互時(shí),使用保留字作為標(biāo)識(shí)符很有用。
C#的值類型進(jìn)一步分為:簡(jiǎn)單類型、枚舉類型、結(jié)構(gòu)類型、可以為null的值類型和元組值類型。C#引用類型又細(xì)分為類類型、接口類型、數(shù)組類型和委托類型。
C#程序使用類型聲明創(chuàng)建新類型。類型聲明指定新類型的名稱和成員。用戶可定義以下六種C#類型:類類型、結(jié)構(gòu)類型、接口類型、枚舉類型、委托類型和元組值類型。還可以聲明record類型(recordstruct或recordclass)。記錄類型具有編譯器合成成員。記錄主要用于存儲(chǔ)值,關(guān)聯(lián)行為最少。
class類型定義包含數(shù)據(jù)成員(字段)和函數(shù)成員(方法、屬性及其他)的數(shù)據(jù)結(jié)構(gòu)。類類型支持單一繼承和多形性,即派生類可以擴(kuò)展和專門針對(duì)基類的機(jī)制。
struct類型定義包含數(shù)據(jù)成員和函數(shù)成員的結(jié)構(gòu),這一點(diǎn)與類類型相似。不過,與類不同的是,結(jié)構(gòu)是值類型,通常不需要進(jìn)行堆分配。結(jié)構(gòu)類型不支持用戶指定的繼承,并且所有結(jié)構(gòu)類型均隱式繼承自類型object。
interface類型將協(xié)定定義為一組已命名的公共成員。實(shí)現(xiàn)interface的class或struct必須提供接口成員的實(shí)現(xiàn)代碼。interface可以繼承自多個(gè)基接口,class和struct可以實(shí)現(xiàn)多個(gè)接口。
delegate類型表示引用包含特定參數(shù)列表和返回類型的方法。通過委托,可以將方法視為可分配給變量并可作為參數(shù)傳遞的實(shí)體。委托類同于函數(shù)式語言提供的函數(shù)類型。它們還類似于其他一些語言中存在的“函數(shù)指針”概念。與函數(shù)指針不同,委托是面向?qū)ο笄翌愋桶踩摹?/p>
class、struct、interface和delegate類型全部都支持泛型,因此可以使用其他類型對(duì)它們進(jìn)行參數(shù)化。
C#支持任意類型的一維和多維數(shù)組。與上述類型不同,數(shù)組類型無需先聲明即可使用。相反,數(shù)組類型是通過在類型名稱后面添加方括號(hào)構(gòu)造而成。例如,int[]是int類型的一維數(shù)組,int[,]是int類型的二維數(shù)組,int[][]是由int類型的一維數(shù)組或“交錯(cuò)”數(shù)組構(gòu)成的一維數(shù)組。
可以為null的類型不需要單獨(dú)定義。對(duì)于所有不可以為null的類型T,都有對(duì)應(yīng)的可以為null的類型T,后者可以包含附加值null。例如,int是可保存任何32位整數(shù)或null值的類型,string是可以保存任何string或null值的類型。
C#采用統(tǒng)一的類型系統(tǒng),因此任意類型的值都可視為object。每種C#類型都直接或間接地派生自object類類型,而object是所有類型的最終基類。只需將值視為類型object,即可將引用類型的值視為對(duì)象。通過執(zhí)行裝箱和取消裝箱操作,可以將值類型
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 編程實(shí)踐中的常見挑戰(zhàn)與解決方案試題及答案
- 測(cè)試數(shù)據(jù)管理的策略試題及答案
- 嵌入式軟件開發(fā)流程解析試題及答案
- C語言與高性能計(jì)算的關(guān)系試題及答案
- 計(jì)算機(jī)一級(jí)Msoffice知識(shí)梳理試題及答案
- 店鋪?zhàn)赓U合同協(xié)議書樣本
- 員工餐飲合同協(xié)議書范本
- 單方解除工程合同協(xié)議書
- 解除勞動(dòng)合同協(xié)議書移交
- 計(jì)算機(jī)四級(jí)編程語言學(xué)習(xí)路徑試題及答案
- 外科手術(shù)護(hù)士術(shù)前準(zhǔn)備
- TBNCY002-2023 西雙版納紅茶 曬紅茶
- 護(hù)理健康教育的重要性
- 妊娠紋的預(yù)防與治療
- 生物技術(shù)制藥-基因工程病毒疫苗
- 表觀遺傳學(xué)與腫瘤課件
- 《可靠性工程基礎(chǔ)》課件
- 建筑材料損耗率定額
- 【2023《上汽集團(tuán)公司營運(yùn)能力現(xiàn)狀及問題探析》8300字(論文)】
- 我是小小講解員博物館演講稿
- 糧安工程糧庫智能化升級(jí)改造 投標(biāo)方案(技術(shù)標(biāo))
評(píng)論
0/150
提交評(píng)論