C#程序設(shè)計初步_第1頁
C#程序設(shè)計初步_第2頁
C#程序設(shè)計初步_第3頁
C#程序設(shè)計初步_第4頁
C#程序設(shè)計初步_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

第一章C#程序設(shè)計初步.NET是一種面向網(wǎng)絡(luò)、支持各種用戶終端的開發(fā)平臺環(huán)境。C#語言是微軟公司推出的.NET平臺下的一種新型語言,集多種語言的特點與優(yōu)勢,是.NET應(yīng)用程序開發(fā)的首選編程語言。1.1.NET平臺與.NET框架簡介1.1.1.NET平臺1.1.2.NET框架1.1.3編譯.NET程序1.2面向?qū)ο蟮睦斫?.2.1傳統(tǒng)的面向過程1.2.2什么是面向?qū)ο?.2.3類和對象1.2.4面向?qū)ο蟮娜筇匦?.3C#語言的特點1.4VisualStdio20231.4.1安裝VisualStudio20231.4.2介紹VisualStudio2023界面1.5應(yīng)用程序開發(fā)1.5.1開發(fā)和運行控制臺應(yīng)用程序1.5.2C#程序的根本結(jié)構(gòu)1.5.3控制臺輸入輸出1.6獲取幫助1.1.NET平臺與.NET框架簡介1.1.1.NET平臺2000年6月22日,微軟公司正式推出Microsoft.NET。網(wǎng)絡(luò)上用來開發(fā)并執(zhí)行所有“效勞〞的平臺,這就是Microsoft.NET。.NET的最終目標(biāo)就是讓用戶可以在任何地點、任何時間、通過任何現(xiàn)有的設(shè)備來得到自己需要的信息,真正到達網(wǎng)絡(luò)互連的“3A〞:Anywhere、Anytime、Anydevice。1.1.NET平臺與.NET框架簡介1.1.1.NET平臺在.NET平臺上,可以實現(xiàn)使用多種語言開發(fā)應(yīng)用程序,可以簡單地重復(fù)使用已有的功能模塊或數(shù)據(jù)。開發(fā)的應(yīng)用程序可以運行在不同的設(shè)備和操作系統(tǒng)上。.NET平臺包括.NET框架和.NET開發(fā)工具等組成局部。.NET框架〔.NETFramework〕是整個開發(fā)平臺的根底,包括公共語言運行庫和.NET類庫。.NET開發(fā)工具包括VisualStudio.NET集成開發(fā)環(huán)境和.NET編程語言。1.1.2.NET框架.NET框架〔.NETFramework〕是.NET開發(fā)平臺的根底。.NET框架提供了一個跨語言的、統(tǒng)一的、面向?qū)ο蟮拈_發(fā)和運行環(huán)境。.NET框架的目的是便于開發(fā)人員更容易地建立Web應(yīng)用程序和WebService,使得Internet上的各個應(yīng)用程序之間,可以使用WebService進行溝通。C#VBVC++其他語言公共語言規(guī)范(CommonLanguageSpecification,CLS)Web應(yīng)用Windows應(yīng)用ADO.NET類庫公共語言運行庫(CommonLanguageRun,簡稱CLR)操作系統(tǒng)圖1-1.NET框架結(jié)構(gòu)1.1.2.NET框架公共語言運行庫〔CommonLanguageRun,CLR〕是.NET框架的根底。公共語言運行庫是一個在執(zhí)行時管理代碼的代理,提供核心效勞〔如內(nèi)存管理、線程管理和遠程處理等〕。.NET類庫是一個綜合性的可重用類型的集合,是使用系統(tǒng)功能及編寫.NET程序的根底。通過命名空間對所有類及其內(nèi)容進行管理。ADO.NET是基于.NETFramework的新一代數(shù)據(jù)訪問技術(shù),主要目的是可以在.NETFramework中更容易地創(chuàng)立分布式的數(shù)據(jù)共享的應(yīng)用程序。ADO.NET建立在XML的根底之上。1.1.2.NET框架Web應(yīng)用和Windows應(yīng)用屬于兩種不同的.NET平臺下應(yīng)用程序開發(fā)模式,即所謂的基于Windows的應(yīng)用程序開發(fā)和基于Web的應(yīng)用程序開發(fā)。公共語言標(biāo)準(zhǔn)〔CommonLanguageSpecification,簡稱CLS〕是支持.NET平臺下各種語言間可互操作的一組規(guī)那么。所有.NET語言都應(yīng)該遵循此規(guī)那么才能創(chuàng)立與其他語言可互操作的應(yīng)用程序。1.1.3編譯.NET程序編譯時,內(nèi)置的語言編譯器首先將應(yīng)用程序編譯為微軟中間語言〔MSIL〕。MSIL由.NET框架中的組件CLR管理和執(zhí)行。第二步,.NET框架采用了一種名為即時編譯〔JIT〕的技術(shù)。JIT將MSIL代碼轉(zhuǎn)換為可以直接由CPU執(zhí)行的機器代碼。一旦編譯成功,在下一次被調(diào)用時無需再次編譯。MSIL代碼是不存在語言差異的,它是獨立于任何一種硬件平臺和操作系統(tǒng)的。1.2面向?qū)ο蟮睦斫?.2.1傳統(tǒng)的面向過程面向過程編程——分析出解決問題所需要的所有步驟,然后用函數(shù)或過程將這些步驟一步一步的實現(xiàn)和調(diào)用。面向過程講究的是自頂向下,逐步細化的編程思想。Fortran、Pasic、C等都是面向過程的語言。voidmain(){ ints=0; InputElem(x,y); s=Sum(x,y); printSum(s); }1.2.1傳統(tǒng)的面向過程用結(jié)構(gòu)化方法開發(fā)的軟件,尤其是面向大型軟件的開發(fā)時,其穩(wěn)定性、可修改性和可重用性都比較差,這是因為結(jié)構(gòu)化方法的本質(zhì)是功能分解。具體而言,面向過程編程存在如下問題:〔1〕對數(shù)據(jù)的平安性保護不夠。〔2〕可維護性差。〔3〕可重用性差。1.2.2什么是面向?qū)ο竺嫦驅(qū)ο蟀殉绦蛑懈鱾€功能模塊按照分類進行歸納和整理,然后將整理結(jié)果制作成一個‘類’。面向?qū)ο笫且环N以對象為根底,以事件或消息來驅(qū)動對象執(zhí)行程序處理的編程技術(shù),具有抽象、封裝、繼承及多態(tài)等特性。面向?qū)ο蟪绦蛟O(shè)計方法認(rèn)為,客觀世界是由各種各樣的實體組成的,這些實體就是面向?qū)ο蠓椒ㄖ械膶ο?。VisualBasic、C++和C#等都是面向?qū)ο蟮恼Z言。1.2.2什么是面向?qū)ο笈c面向過程相比,它有以下優(yōu)點:〔1〕與人類習(xí)慣的思維方法一致〔2〕數(shù)據(jù)和行為別離〔3〕穩(wěn)定性好〔4〕可重用性好〔5〕可維護性好1.2.3類和對象面向?qū)ο蟪绦蛟O(shè)計從所處理的數(shù)據(jù)入手,并以數(shù)據(jù)為中心,把現(xiàn)實世界的問題抽象為“類〞的概念。類——對現(xiàn)實世界中一系列具有相同性質(zhì)的的事物的總稱,是對具有共同數(shù)據(jù)和行為的一類事物的抽象描述。共同數(shù)據(jù)被描述為類中的數(shù)據(jù)成員,共同行為被描述為類中的方法成員。例如:讀者〔Reader〕是對各種讀者的一個抽象,讀者的證號、姓名、年齡等都是讀者類的數(shù)據(jù)成員,而借書和還書等是讀者類的方法成員。1.2.3類和對象面向?qū)ο蟮某绦蛟O(shè)計方法最根本的思想就是把所有要進行研究的事物,都稱為對象。一切皆是對象,任何物理實體、抽象的規(guī)那么、方案或者事件都可以是對象。例如,一個人、一本書、一張椅子,乃至一首歌曲、一個設(shè)想,都可以作為一個對象。對象是類的一個實例。實例化的對象具有唯一性,用以區(qū)別同類的其他對象。例如,讀者是一個類,具體到某一個讀者〔例如某某同學(xué)〕就是一個對象,并且是唯一的。1.2.4面向?qū)ο蟮娜筇匦?.封裝封裝是把數(shù)據(jù)和對數(shù)據(jù)的操作封藏成一個有機整體,創(chuàng)立一種稱為類或結(jié)構(gòu)的新“數(shù)據(jù)類型〞。對于外部使用者而言,無需知道對象內(nèi)部的具體實現(xiàn)細節(jié),而只需要關(guān)心如何使用該對象,從而保證了私密的內(nèi)容不會被用戶覺察,不被外界隨意改變,也使對象成了相對獨立的功能模塊。防止數(shù)據(jù)被程序直接訪問的概念被稱為“數(shù)據(jù)隱藏〞。1.2.4面向?qū)ο蟮娜筇匦?.繼承繼承是可以讓某個類型對象獲得另一個類型對象的共有特性的一種手段,是類的層次結(jié)構(gòu)之間共享數(shù)據(jù)和方法的一種機制。繼承可以描述為一種樹狀的層次關(guān)系。繼承的概念很好的支持了代碼的重用性通過繼承生成的新類將具有原來那個類的特性,以及它本身一些新的特性。學(xué)生大學(xué)生本科生??粕袑W(xué)生1.2.4面向?qū)ο蟮娜筇匦?.多態(tài)

方法在處理不同對象的時候會得到不同的結(jié)果,這個就是類的多態(tài)。利用多態(tài),可以在具有繼承關(guān)系的多個類中定義名稱相同、但操作不同的多個方法。在程序運行時,根據(jù)對象的實際類型調(diào)用相應(yīng)的方法。應(yīng)用多態(tài),可使程序具有良好的可擴充性。1.3C#語言的特點1.C#語言擁有C/C++的強大功能以及VisualBasic簡易使用的特性,而且看起來與Java有著驚人的相似。2.C#語言不僅有實時的編譯器,而且含有比一般語言更豐富的數(shù)據(jù)類型。3.C#語言以提供腳本語言所無法提供的強大功能,使用C#編寫ASP.NET應(yīng)用程序?qū)⒊蔀閃eb開發(fā)的最正確選擇。4.C#包含的內(nèi)置特性,使任何組件可以輕松轉(zhuǎn)化為XML網(wǎng)絡(luò)效勞,通過Internet被任何操作系統(tǒng)上運行的任何程序調(diào)用。5.C#能夠消除很多常見的C++編程錯誤,諸如:變量由環(huán)境自動初始化,變量的類型平安等。1.4VisualStdio2023VisualStudio2023是VisualStudio的新版本,它是一套用來開發(fā)、調(diào)試、部署各種應(yīng)用程序的產(chǎn)品的最重要的開發(fā)環(huán)境。VisualStudio2023引入了250多個新特性,整合了對象、關(guān)系型數(shù)據(jù)、XML的訪問方式,語言更加簡潔。1.4.1安裝VisualStudio2023支持的操作系統(tǒng)硬件要求Internet信息效勞(IIS)1.4.2介紹VisualStudio2023界面1.VisualStudio起始頁2.新建VisualC#.NET工程“文件〞→“新建〞→“工程〞3.“解決方案資源管理器〞窗口一個解決方案通常包含一個或幾個相關(guān)聯(lián)的工程。4.“工具箱〞窗口用于提供界面設(shè)計時所需的各種控件。5.“屬性〞窗口用于查看設(shè)計時的窗體和控件的局部屬性選項及其值。1.4.2介紹VisualStudio2023界面1.5應(yīng)用程序開發(fā)控制臺應(yīng)用程序:這類應(yīng)用程序是運行在DOS窗口上的純文本應(yīng)用程序。Windows窗體應(yīng)用程序:這類應(yīng)用程序就像MicrosoftOffice,具有Windows外觀和操作方式。ASP.NET網(wǎng)站:ActiveServerPages.NET〔簡稱ASP.NET〕就是做Web頁面、建網(wǎng)站,可以通過任何Web瀏覽器查看。選擇“文件〞→“新建〞→“工程〞菜單命令。在翻開的“新建工程〞對話框中“工程類型〞列表中選擇VisualC#節(jié)點下的Windows,在“模板〞窗格中選擇“控制臺應(yīng)用程序〞工程模板。在翻開的Program.cs文件中編寫代碼。選擇“調(diào)試〞→“啟動調(diào)試〞菜單命令,編譯并運行該程序。1.5.1開發(fā)和運行控制臺應(yīng)用程序1.5.2C#程序的根本結(jié)構(gòu)【例1-1】控制臺應(yīng)用程序舉例。usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;namespaceFirstSample{

classProgram{staticvoidMain(string[]args){stringname;Console.Write("請輸入姓名:");//屏幕提示name=Console.ReadLine();

/*輸入一行文字,賦值給name變量*/

Con

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論