




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第4章 控制臺(tái)應(yīng)用程序設(shè)計(jì)1教學(xué)目標(biāo) 本章主要介紹命名空間概念、定義及導(dǎo)入方法,標(biāo)準(zhǔn)輸入輸出類(lèi)System.Console類(lèi)的應(yīng)用,System.Convert類(lèi)的應(yīng)用,C#程序的基本結(jié)構(gòu),Main方法的定義方法及功能,控制臺(tái)應(yīng)用程序的設(shè)計(jì),命令行方式上機(jī)操作等內(nèi)容。通過(guò)本章的學(xué)習(xí),讀者將對(duì)C#的框架有個(gè)初步的認(rèn)識(shí),能夠完成控制臺(tái)應(yīng)用程序的設(shè)計(jì),熟悉命令行方式上機(jī)操作。2教學(xué)重點(diǎn) 命名空間概念的含義 namespace和using關(guān)鍵字使用 System.Console類(lèi)的使用 System.Convert類(lèi)的使用 Main方法 C#主要預(yù)處理指令的使用 C#程序的基本結(jié)構(gòu) 控制臺(tái)應(yīng)用程序的設(shè)
2、計(jì)3命名空間是一組包含相關(guān)方法的相似類(lèi),專(zhuān)門(mén)用于避免類(lèi)與類(lèi)之間的名稱(chēng)沖突。 命名空間用來(lái)聲明一個(gè)范圍,可以在這個(gè)范圍內(nèi)組織代碼,創(chuàng)建全局唯一的類(lèi)型。它把多個(gè)類(lèi)收集在一起成為一組,便于組織代碼,使自己的任務(wù)和他人提供的代碼庫(kù)分離;避免類(lèi)與類(lèi)之間的名稱(chēng)沖突;還可以提高編譯速度。命名空間可以嵌套,從而分成層次。多個(gè)源代碼文件可以使用同一個(gè)命名空間。 使用命名空間好處:一是可以使每個(gè)命名空間中的類(lèi)不至于過(guò)多,二是可以保證類(lèi)名的唯一性。 4.1 命名空間 4使用namespace關(guān)鍵字定義命名空間。一個(gè)文件中可以有多個(gè)namespace語(yǔ)句。即使未顯式聲明命名空間,也會(huì)創(chuàng)建默認(rèn)命名空間。全局命名空間中的
3、任何標(biāo)識(shí)符都可用于命名空間中。 namespace語(yǔ)句中包含的類(lèi)可以使用 private或public修飾符,缺省為public。4.1.1 namespace關(guān)鍵字 5 namespace語(yǔ)句對(duì)于源文件的存放位置并無(wú)要求。編譯器編譯時(shí)也不對(duì)文件位置做檢查。 提示:最好使用單位的名稱(chēng)作為根命名空間。.Net Framework由許多命名空間組成,其中最重要的是System。 .Net Framework類(lèi)庫(kù)常用的命名空間如下表所示: 4.1.1 namespace關(guān)鍵字 64.1.1 namespace關(guān)鍵字 命名空間說(shuō)明System.Drawing 處理圖形和繪圖,包括打印。 System.
4、Data 處理數(shù)據(jù)存取和管理,在定義 ADO.NET 技術(shù)中扮演重要角色。System.IO 管理對(duì)文件和流的同步和異步訪問(wèn)。System.Windows 處理基于窗體的窗口的創(chuàng)建。System.Reflection 包含從程序集讀取元數(shù)據(jù)的類(lèi)。System.Threading 包含用于多線程編程的類(lèi)。 System.Collections 包含定義各種對(duì)象集的接口和類(lèi)。7 .Net Framework類(lèi)庫(kù)以命名空間的形式 被組織成層次結(jié)構(gòu)。如同wingdows的目錄結(jié)構(gòu),在使用其他命名空間中的類(lèi)時(shí),需要寫(xiě)上完整的類(lèi)名稱(chēng),當(dāng)類(lèi)嵌套了幾層時(shí),就會(huì)產(chǎn)生一些冗長(zhǎng)的名稱(chēng)。例如:4.1.2 using關(guān)
5、鍵字 為了節(jié)約鍵入時(shí)間C#提供了using指示符。using的作用是導(dǎo)入命名空間中的所有公開(kāi)類(lèi)。using的語(yǔ)法格式是: using 命名空間的層次結(jié)構(gòu)名稱(chēng);8 輸入和輸出是很多程序中常用的功能,也是非常重要的功能,C#提供了功能強(qiáng)大的輸入與輸出的控制。 Console類(lèi)對(duì)從控制臺(tái)讀取字符并向控制臺(tái)寫(xiě)入字符的應(yīng)用程序提供基本支持。如果控制臺(tái)不存在(在基于Windows的應(yīng)用程序中就是這樣),則不顯示向控制臺(tái)的寫(xiě)入而且不會(huì)引發(fā)異常。4.2 System.Console類(lèi) 9Console類(lèi)的屬性:如表4-2所示。Console類(lèi)的方法:如表4-3所示。4.2 System.Console類(lèi) 10
6、Console類(lèi)的屬性:表4-2屬性屬性描述Error獲取標(biāo)準(zhǔn)錯(cuò)誤輸出流In獲取標(biāo)準(zhǔn)輸入流Out獲取標(biāo)準(zhǔn)輸出流11Console類(lèi)的方法:表4-3方法名描述OpenStandardError已重載,獲取標(biāo)準(zhǔn)錯(cuò)誤流OpenStanderdInput已重載,獲取標(biāo)準(zhǔn)輸入流OpenStanderdOutput已重載,獲取標(biāo)準(zhǔn)輸出流Read從標(biāo)準(zhǔn)輸入流讀取下一個(gè)字符ReadLine從標(biāo)準(zhǔn)輸入流讀取下一行字符ReadKey獲取用戶(hù)按下的下一個(gè)字符或功能鍵,按下的鍵可以選擇顯示在控制臺(tái)窗口中SetError將Error屬性設(shè)為指定的TextWriter對(duì)象SetIn將In屬性設(shè)置為指定的TextReade
7、r對(duì)象SetOut將Out屬性設(shè)置為指定的TextWriter對(duì)象,默認(rèn)情況下Out屬性設(shè)置為標(biāo)準(zhǔn)輸出流,可通過(guò)SetOut方法將此屬性設(shè)置為另一個(gè)流。Write已重載,將指定的信息寫(xiě)入標(biāo)準(zhǔn)輸出流,不換行WriteLine已重載,將指定的信息寫(xiě)入標(biāo)準(zhǔn)輸出流,換行示例:Ex4-1、 Ex4-212在C#的System命名空間中,有一個(gè)Convert(轉(zhuǎn)換)類(lèi),該類(lèi)提供了由字符串類(lèi)型轉(zhuǎn)換為其他類(lèi)型的一系列靜態(tài)方法。 調(diào)用格式: Convert.靜態(tài)方法名(字符串類(lèi)型數(shù)據(jù)) 表4-4給出了Convert類(lèi)的常用靜態(tài)方法 。4.3 System.Convert類(lèi) 13表4-4 Convert類(lèi)常用的靜
8、態(tài)方法 命 令結(jié) 果Convert.ToBoolean(val)val 轉(zhuǎn)換為 boolConvert.ToByte(val)val 轉(zhuǎn)換為 byteConvert.ToChar(val)val 轉(zhuǎn)換為 charConvert.ToDecimal(val)val 轉(zhuǎn)換為 decimalConvert.ToDouble(val)val 轉(zhuǎn)換為 doubleConvert.ToInt16(val)val 轉(zhuǎn)換為 shortConvert.ToInt32(val)val 轉(zhuǎn)換為 intConvert.ToInt64(val)val 轉(zhuǎn)換為 longConvert.ToSByte(val)val 轉(zhuǎn)換
9、為 sbyteConvert.ToSingle(val)val 轉(zhuǎn)換為 floatConvert.ToString(val)val 轉(zhuǎn)換為 stringConvert.ToUInt16(val)val 轉(zhuǎn)換為 ushortConvert.ToUInt32(val)val 轉(zhuǎn)換為 uintConvert.ToUInt64(val)val 轉(zhuǎn)換為 ulong示例:Ex4-414每一個(gè)應(yīng)用程序都必須包含一個(gè)名稱(chēng)為Main的方法,這個(gè)方法可以在任何一個(gè)類(lèi)中定義。具體在哪個(gè)類(lèi)中包含這個(gè)方法是無(wú)關(guān)緊要的。在一個(gè)給定的應(yīng)用程序中可以包含任意數(shù)量的類(lèi),只要其中一個(gè)類(lèi)包含名稱(chēng)為Main的方法就可以了。另外,這個(gè)
10、方法必須被定義為“public”和“static”。 4.4 Main方法 15Main方法總共有以下4種簽名(返回類(lèi)型和參數(shù)):public static void Main()public static void Main(string args)public static int Main()public static int Main(string args)/帶參數(shù)的Main方法可以使程序讀取命令行參數(shù)。4.4 Main方法 164.5 C# 預(yù)處理器指令 1. #define 預(yù)處理器指令 #define可用來(lái)定義符號(hào)。 其定義的一般格式是: #define 符號(hào)名 可以用 #un
11、def 來(lái)取消定義符號(hào)。其定義的一般格式是: #undef 已定義的符號(hào)名 注: #define 可以定義符號(hào),但無(wú)法對(duì)符號(hào)進(jìn)行賦值; #define指令必須出現(xiàn)在文件內(nèi)容的最前面。174.5 C# 預(yù)處理器指令 2. #region . #endregion #region . #endregion之間的代碼塊可以在Visual Studio中展開(kāi)或折疊。 184.5 C# 預(yù)處理器指令 3. #if#elif#else#endif 使用 #if 以及 #else、#elif、#endif、#define 和 #undef 指令,可以包括或排除基于由一個(gè)或多個(gè)符號(hào)組成的條件的代碼。這在編譯調(diào)
12、試版本的代碼或編譯特定配置時(shí)非常有用。其定義的一般格式是:#if (符號(hào)表達(dá)式1)#elif (符號(hào)表達(dá)式2)#else#endif194.6 C#程序結(jié)構(gòu) C#程序結(jié)構(gòu)特點(diǎn)如下:所有代碼都組織在類(lèi)中。程序從Main()方法開(kāi)始執(zhí)行,Main方法可以包含字符串?dāng)?shù)組(string args)類(lèi)型的參數(shù)。C#語(yǔ)言區(qū)分大小寫(xiě)。C#程序中允許任意多的空白。C#程序中可以使用/, /* */和/添加注釋?zhuān)?后面跟xml。204.6 C#程序結(jié)構(gòu) C#程序可由一個(gè)或多個(gè)文件組成。每個(gè)文件可包含一個(gè)或多個(gè)命名空間。一個(gè)命名空間除了可包含其他命名空間外,還可包含class( 類(lèi))、struct( 結(jié)構(gòu))、in
13、terface( 接口)、 enum( 枚舉 )、delegate( 代理或叫委派)等類(lèi)型。下面給出C#程序的框架,它可能包含所有這些元素。21224.7創(chuàng)建一個(gè)控制臺(tái)應(yīng)用程序 在Visual Studio 2005中創(chuàng)建一個(gè)控制臺(tái)應(yīng)用程序步驟是:(1) 啟動(dòng)Microsoft Visual Studio 2005。(2) 選擇【文件】|【新建】|【項(xiàng)目】。隨后會(huì)打開(kāi)【新建項(xiàng)目】對(duì)話框。(3) 在【模板】選項(xiàng)區(qū)域中選擇【控制臺(tái)應(yīng)用程序】圖標(biāo)。(4) 在【位置】文本框中輸入項(xiàng)目文件的路徑。(5) 在【名稱(chēng)】文本框輸入文件名或用默認(rèn)的文件名。 (6) 確定已勾選了【創(chuàng)建解決方案的目錄】選項(xiàng),然后單擊【確定】按鈕。 234.7創(chuàng)建一個(gè)控制臺(tái)應(yīng)用程序 (7) 在顯示了Program.cs文件【代碼和文本編輯器】窗口Main方法的大括號(hào)中輸入你的源程序。 / Output text to the screen.Console.WriteLine(歡迎使用Visual Studio 2005開(kāi)發(fā)C#程序); Console.ReadKey();(8) 選擇【生成】|【生成解決方案】,確定錯(cuò)誤列表窗口沒(méi)有任何錯(cuò)誤出現(xiàn)。如有錯(cuò)誤,修改源程序,重新編譯,直到?jīng)]有任何嚴(yán)重錯(cuò)誤為止。該過(guò)程將編譯項(xiàng)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 部編人教版二年級(jí)語(yǔ)文教師教學(xué)研討計(jì)劃
- 園林景觀工程冬季施工質(zhì)量控制措施
- 護(hù)理患者轉(zhuǎn)運(yùn)流程
- 廠房建設(shè)分部分項(xiàng)施工方案及質(zhì)量保證措施
- 服務(wù)業(yè)貫徹優(yōu)化營(yíng)商環(huán)境條例心得體會(huì)
- 城市燃煤電廠管線加固保護(hù)措施
- 康復(fù)科室健康教育工作計(jì)劃
- 能源企業(yè)供應(yīng)商管理辦法范文
- 農(nóng)業(yè)科研實(shí)習(xí)總結(jié)范文
- 【真題】人教版三年級(jí)下冊(cè)期末測(cè)試數(shù)學(xué)試卷(含解析)2024-2025學(xué)年湖北省十堰市鄖西縣
- 2025至2030中國(guó)血栓彈性成像儀行業(yè)發(fā)展趨勢(shì)分析與未來(lái)投資戰(zhàn)略咨詢(xún)研究報(bào)告
- 建筑工程管理考試模擬題及答案
- 2025年 老年人能力評(píng)估師三級(jí)考試模擬試卷附答案
- 浙江省“桐浦富興”教研聯(lián)盟2024-2025學(xué)年高一下學(xué)期6月學(xué)考模擬化學(xué)試卷(含答案)
- 肛周良性疾病診療要點(diǎn)
- 鄉(xiāng)鎮(zhèn)農(nóng)村公墓管理制度
- 膿毒血癥護(hù)理查房報(bào)告講課件
- DL∕T 5452-2012 變電工程初步設(shè)計(jì)內(nèi)容深度規(guī)定
- 不良事件報(bào)告與防范
- 【吉爾吉斯和國(guó)經(jīng)商指南-法律篇】
- 百家麗-中國(guó)-照明電器有限公司的精益生產(chǎn)應(yīng)用
評(píng)論
0/150
提交評(píng)論