深入.NET平臺(tái)和C#編程_第1頁(yè)
深入.NET平臺(tái)和C#編程_第2頁(yè)
深入.NET平臺(tái)和C#編程_第3頁(yè)
深入.NET平臺(tái)和C#編程_第4頁(yè)
深入.NET平臺(tái)和C#編程_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、.深入.NET平臺(tái)和C#編程第一章: 深入.NET框架1.NET框架的主要內(nèi)容有CLR,框架庫(kù)類(lèi)2.CLR是所有.NET應(yīng)用程序運(yùn)行時(shí)的環(huán)境,是所有.NET應(yīng)用要使用的編程基礎(chǔ)。3.CLR中有兩個(gè)組件,CTS是通用類(lèi)型系統(tǒng);CLS是公共語(yǔ)言規(guī)范4.NETFRAMEWORK包括兩部分,一個(gè)是CLR,一個(gè)是FCLCLR確保語(yǔ)言之間的兼容;FCL提供的類(lèi)文件,確保開(kāi)發(fā)的靈活性;第二章: 深入C#數(shù)據(jù)類(lèi)型1.類(lèi)和對(duì)象:由對(duì)象歸納為類(lèi),是歸納對(duì)象的過(guò)程.在類(lèi)的基礎(chǔ)上,將狀態(tài)和行為實(shí)體化為對(duì)象的過(guò)程稱(chēng)為實(shí)例化2.封裝的好處:a.保證數(shù)據(jù)的安全性b.提供清晰的對(duì)外接口c.類(lèi)內(nèi)部實(shí)現(xiàn)可以任意修改,不影響其他類(lèi)

2、3.值類(lèi)型和引用類(lèi)型值類(lèi)型: 基本數(shù)據(jù)類(lèi)型:整型:int長(zhǎng)整型:long浮點(diǎn)型:froat,double字符型:char布爾型:bool枚舉類(lèi)型:枚舉型:enum結(jié)構(gòu)類(lèi)型:結(jié)構(gòu)型:stract引用類(lèi)型:類(lèi):基類(lèi):system,object字符串:string自定義類(lèi):class接口:接口:interface數(shù)組:數(shù)組:int,string特點(diǎn):引用類(lèi)型作為參數(shù)傳遞,其值的修改將會(huì)保留以引用方式(ref)傳遞值類(lèi)型的數(shù)據(jù),其值的修改也將會(huì)保留直接傳遞值類(lèi)型數(shù)據(jù),對(duì)它的修改不會(huì)被保留4.結(jié)構(gòu):定義:訪問(wèn)修飾符 struct 結(jié)構(gòu)名結(jié)構(gòu)體特點(diǎn):結(jié)構(gòu)中可以有字段,也可以有方法定義時(shí),結(jié)構(gòu)中的字段不能被

3、賦初值結(jié)構(gòu)的的使用注意事項(xiàng):可以不用New,直接定義結(jié)構(gòu)的對(duì)象即可聲明結(jié)構(gòu)的對(duì)象后,必須給結(jié)構(gòu)的成員賦初值裝箱與拆箱:用于值類(lèi)型和引用類(lèi)型的轉(zhuǎn)換。值類(lèi)型引用類(lèi)型(裝箱)(拆箱)值類(lèi)型引用類(lèi)型5.靜態(tài)方法:靜態(tài)(static)成員(字段和方法)不是面向?qū)ο蟮?,靜態(tài)成員描述的事物類(lèi)似與太陽(yáng)等公共事物,在以后的編程中,如果一個(gè)字段和方法,或者類(lèi)在不同的地方被頻繁的使用的話(huà),就可以把它聲明為靜態(tài)的第三章:使用集合組織相關(guān)數(shù)據(jù) 1. ArrayList 小結(jié),arraylist的優(yōu)缺點(diǎn) 優(yōu)點(diǎn):相對(duì)于數(shù)組,長(zhǎng)度是可以動(dòng)態(tài)調(diào)整的 缺點(diǎn):數(shù)組里面只能放一種類(lèi)型的數(shù)據(jù),arraylist可以放多種類(lèi)型數(shù)據(jù) 這樣

4、做壞處,在取集合中數(shù)據(jù)時(shí)經(jīng)常須要強(qiáng)轉(zhuǎn) arraylist 只能通過(guò)下標(biāo)來(lái)訪問(wèn)里面的元素2. Hashtable:Hashtabl優(yōu)缺點(diǎn): 與arrayli相比:相對(duì)arraylist,hashtable可以通過(guò)key值來(lái)遍歷value值,也就是說(shuō)可以通過(guò)指定值去查找集合中的對(duì)象,這一點(diǎn)比arraylist只能通下標(biāo)要好的多arraylist速度快但不方便,hashtable方便但速度慢(相對(duì)來(lái)講)共同的缺點(diǎn)是:無(wú)論什么類(lèi)型的數(shù)據(jù),添加到他們兩個(gè)集合中以后就變成了object(裝箱) 因此在出來(lái)的時(shí)侯經(jīng)常須要強(qiáng)轉(zhuǎn)(拆箱)3.泛型小結(jié)list就是來(lái)替換arraylist集合的最大的好處,不須要強(qiáng)轉(zhuǎn)

5、,避免了頻繁裝箱與拆箱因此性能和安全方法比arraylist要好缺點(diǎn)之一:跟arraylist一樣只能通過(guò)下標(biāo)來(lái)取某個(gè)元素用dictionary來(lái)替換hashtableDictionary 就是來(lái)替換hashtable集合的最大的好處,不須要強(qiáng)轉(zhuǎn),避免了頻繁裝箱與拆箱因此性能和安全方法比hashtable要好第四章:深入類(lèi)的方法1.構(gòu)造函數(shù):a.類(lèi)的構(gòu)造函數(shù):類(lèi)的構(gòu)造函數(shù)是類(lèi)的一種特殊方法。有以下特點(diǎn):它的方法名與類(lèi)名相同,沒(méi)有返回類(lèi)型,主要完成對(duì)象的初始化工作。b.無(wú)參構(gòu)造函數(shù):默認(rèn)情況下,系統(tǒng)會(huì)給類(lèi)分配一個(gè)無(wú)參數(shù)的構(gòu)造函數(shù),并沒(méi)有方法體。我們可以自己編寫(xiě)無(wú)參構(gòu)造函數(shù),在方法體中對(duì)類(lèi)進(jìn)行賦值

6、。c.帶參構(gòu)造函數(shù):參數(shù)列表一般給類(lèi)的屬性賦值。帶參構(gòu)造函數(shù)的靈活性更好。2.方法重載:指方法名相同,而參數(shù)類(lèi)型與參數(shù)個(gè)數(shù)不同,在同一個(gè)類(lèi)中,構(gòu)造函數(shù)和普通方法都可以重載。好處:方法重載不但能夠避免命名的麻煩,還使調(diào)用者不必對(duì)參數(shù)類(lèi)型做判斷而直接調(diào)用。3.對(duì)象交互:面向?qū)ο蟮某绦蛑?,?duì)象通過(guò)公開(kāi)方法和屬性完成于其他對(duì)象的交互。第六章 初始繼承和多態(tài)1.繼承:繼承必須符合 is a的關(guān)系,被繼承的類(lèi)稱(chēng)為父類(lèi)或者基類(lèi),繼承其他類(lèi)的類(lèi)稱(chēng)為子類(lèi)或者派生類(lèi)。繼承的特點(diǎn):a.繼承必須符合 is a的關(guān)系,被繼承的類(lèi)為父類(lèi)或者基類(lèi),繼承其他類(lèi)的類(lèi)稱(chēng)為子類(lèi)或者派生類(lèi)b.繼承機(jī)制很好地解決了代碼的復(fù)用的問(wèn)題c.

7、子類(lèi)繼承父類(lèi)的成員,并且可以擁有自己特有的成員d.繼承具有傳遞性,如果class A:B,classB:C,則A也可以訪問(wèn)C的成員2.Public private 和protected 區(qū)別:修飾符 類(lèi)內(nèi)部 子類(lèi) 其他類(lèi)Public 可以 可以 可以Protrcted 可以 可以 不可以Private 可以 不可以 不可以3.多態(tài)多態(tài)是指兩個(gè)或多個(gè)屬于不同類(lèi)的對(duì)象,對(duì)于同一個(gè)消息(方法調(diào)用)作出不同響應(yīng)的方式。方法的重載也是實(shí)現(xiàn)多態(tài)性的一種方式,虛函數(shù)實(shí)現(xiàn)多態(tài)的方法分布在多個(gè)子類(lèi)中,方法重載也稱(chēng)為方法的多態(tài)。實(shí)現(xiàn)方法的重寫(xiě),用virtual關(guān)鍵字定義為虛方法。在子類(lèi)中用override關(guān)鍵字修

8、飾,就實(shí)現(xiàn)了對(duì)父類(lèi)方法的重寫(xiě)。 第七章 深入理解多態(tài)1. 里氏替換概述子類(lèi)對(duì)象可以賦給父類(lèi)變量,也可以說(shuō)子類(lèi)可以替換父類(lèi)并且出現(xiàn)在父類(lèi)能夠出現(xiàn)的任何地方,且程序的行為不會(huì)發(fā)生變化,但是反過(guò)來(lái),父類(lèi)對(duì)象時(shí)不能替換子類(lèi)對(duì)象的。2. 抽象方法語(yǔ)法:訪問(wèn)修飾符 abstract 返回類(lèi)型 方法名 ();抽象類(lèi)提供抽象方法語(yǔ)法:訪問(wèn)修飾符 abstract class 類(lèi)名;3. is和as區(qū)別:If(emplsi is(as) SE)is用于檢查對(duì)象和指定的類(lèi)型是否兼容,as主要轉(zhuǎn)換對(duì)象指定的類(lèi)型。3. 虛方法與抽象方法的區(qū)別:虛方法 抽象方法用virtual修飾 用abstract修飾要有方法體,哪

9、怕是一個(gè)分號(hào) 不允許有方法體可以被子類(lèi)override 必須被子類(lèi)override除了密封類(lèi)外都可以寫(xiě) 只能在抽象類(lèi)中寫(xiě) 第八章 面向?qū)ο蟾呒?jí)應(yīng)用1.設(shè)計(jì)模式:設(shè)計(jì)模式是人們?cè)陂L(zhǎng)期的軟件開(kāi)發(fā)中對(duì)一些經(jīng)驗(yàn)的總結(jié),是某些特定問(wèn)題經(jīng)過(guò)實(shí)踐檢驗(yàn)的特定的解決方法。2. 簡(jiǎn)單工廠和單例:a.簡(jiǎn)單工廠設(shè)計(jì)模式的主要功能是實(shí)現(xiàn)創(chuàng)建所有實(shí)例的內(nèi)部邏輯。由工廠類(lèi)負(fù)責(zé)創(chuàng)建具體的對(duì)象,客戶(hù)只需要知道工廠和產(chǎn)品的父類(lèi)即可。簡(jiǎn)單工廠返回的數(shù)據(jù)類(lèi)型都是父類(lèi)類(lèi)型,工廠方法一般都是靜態(tài)的。b. 單例設(shè)計(jì)模式確保一個(gè)類(lèi)只有一個(gè)實(shí)例,并且提供一個(gè)全局訪問(wèn)點(diǎn)。類(lèi)的構(gòu)造函數(shù)可以是私有的,實(shí)現(xiàn)了單例模式的類(lèi)通常采用私有構(gòu)造函數(shù)確保類(lèi)不在

10、類(lèi)的外部被實(shí)例化。 第十章 可擴(kuò)展標(biāo)記性語(yǔ)言XML1.讀取一個(gè)XML文檔使用XMLDocument對(duì)象 XML節(jié)點(diǎn)使用XMLNode對(duì)象表示2. XMLDocument對(duì)象的DocumentElement屬性可以獲得XML文檔的跟 ChildNode屬性可以獲得所有子節(jié)點(diǎn)3.TreeNode表示TreeView的節(jié)點(diǎn)對(duì)象 Text屬性用于設(shè)置節(jié)點(diǎn)的文字描述 Tag屬性用于設(shè)置節(jié)點(diǎn)的相關(guān)信息4.通過(guò)TreeNode的Add()方法可以給TreeView添加節(jié)點(diǎn) Remove()可以移除指定的節(jié)點(diǎn),clear()可以移除指定節(jié)點(diǎn)下的所有節(jié)點(diǎn) 第十一章 文件操作用C#程序讀寫(xiě)一個(gè)文件需要幾步?每步分

11、別是什么? 1.創(chuàng)建文件流 2.創(chuàng)建閱讀器或?qū)懭肫?3.執(zhí)行讀寫(xiě)操作 4.關(guān)閉 閱讀器或?qū)懭肫?5.關(guān)閉文件流讀寫(xiě)文件的五步里都用到了哪些類(lèi)?在使用這些類(lèi)之們需要引入什么命名空間1.using System.Io;FrimStream(文件流類(lèi))StreamWriter(文件寫(xiě)入器)StreamReader(文件讀取器) 寫(xiě)入器的類(lèi)名是什么?他有哪些方法?使用時(shí)要注意什么? StreamWriter(文件寫(xiě)入器) StreamWriter .Writer() StreamWriter .WriterLine() StreamWriter .Close()當(dāng)寫(xiě)入器使用完畢時(shí),關(guān)閉寫(xiě)入器的方法是必須調(diào)用的,讀取器的類(lèi)名是什么?他有哪些方法?使用時(shí)要注意什么? StreamReader(文件讀取器) StreamReader.ReadLine()StreamReader.ReadToEnd()StreamReader.Close()當(dāng)準(zhǔn)備讀取數(shù)據(jù)時(shí),所創(chuàng)建文件流的應(yīng)該設(shè)置為另外讀取結(jié)束后要將文件流和讀取器關(guān)閉對(duì)文件和目錄的操作可以使用哪幾個(gè)類(lèi)及第個(gè)類(lèi)的常用方法有哪些? File類(lèi)和Direct

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論