c#的面向?qū)ο蟪绦蛟O(shè)計

c#的面向?qū)ο蟪绦蛟O(shè)計

ID:26282707

大小:454.37 KB

頁數(shù):78頁

時間:2018-11-24

c#的面向?qū)ο蟪绦蛟O(shè)計_第1頁
c#的面向?qū)ο蟪绦蛟O(shè)計_第2頁
c#的面向?qū)ο蟪绦蛟O(shè)計_第3頁
c#的面向?qū)ο蟪绦蛟O(shè)計_第4頁
c#的面向?qū)ο蟪绦蛟O(shè)計_第5頁
資源描述:

《c#的面向?qū)ο蟪绦蛟O(shè)計》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫

1、第6章C#的面向?qū)ο蟪绦蛟O(shè)計內(nèi)容提要:類、對象的概念及使用方法、屬性、索引的概念、聲明及調(diào)用構(gòu)造函數(shù)和析構(gòu)函數(shù)的定義繼承和接口的用法委托和事件的聲明及調(diào)用目的要求:理解類、對象、構(gòu)造函數(shù)和析構(gòu)函數(shù)的意義掌握方法、屬性、索引的用法掌握繼承和接口、委托和事件的聲明及調(diào)用重點(diǎn)難點(diǎn):類、對象、方法、屬性、繼承、接口、委托和事件面向?qū)ο蟮某绦蛟O(shè)計(OOP)的主要思想是將數(shù)據(jù)及處理這些數(shù)據(jù)的操作都封裝到一個稱為類(Class)的數(shù)據(jù)結(jié)構(gòu)中。使用這個類時,只需要定義一個類的變量即可,這個變量叫做對象(Object)。通過調(diào)用對象的數(shù)據(jù)成員完成對類的使用。1.類在面向?qū)ο罄碚撝校悾?/p>

2、class)就是對具有相同特征的一類事物所做的抽象(或者說,歸納)。6.1面向?qū)ο蟪绦蛟O(shè)計的基本概念2.對象類是一種抽象,而對象(object)則是實例(instance),是具體的。如果使用如下格式來代表一個類生成一個對象:類名對象名;則:電子計算機(jī)ComputerA;電子計算機(jī)ComputerB;就代表ComputerA和ComputerB是“電子計算機(jī)”類的兩個不同對象。3.類的屬性屬性說明了這個類的特點(diǎn)。例如“PC計算機(jī)”類則可能具備如下屬性:計算機(jī)的名稱CPU類型內(nèi)存容量硬盤容量主板型號顯示適配器型號聲卡型號操作系統(tǒng)類型通過這些屬性,就可以將不同的PC計算機(jī)

3、區(qū)分開。3.類的屬性屬性說明了這個類的特點(diǎn)。例如“PC計算機(jī)”類則可能具備如下屬性:計算機(jī)的名稱CPU類型內(nèi)存容量硬盤容量主板型號顯示適配器型號聲卡型號操作系統(tǒng)類型通過這些屬性,就可以將不同的PC計算機(jī)區(qū)分開。4.類的方法類的方法(method)代表了一類事物所具備的動作,是對屬性的操作。比如:“石英鐘”類的方法有:秒針前進(jìn)一格、分針前進(jìn)一格、時針前進(jìn)一格等;而“錄像機(jī)”類所具備的方法可以有:播放、定格、錄像、倒帶、快進(jìn)等。5.派生和繼承在類的繼承中,被繼承的類稱為基類(又稱為父類),由基類繼承的類稱為派生類(又稱為子類)。派生類自動獲得基類的所有屬性和方法,而且可以

4、在派生類中添加新的屬性和方法。6.多態(tài)性多態(tài)性是指在一般類中定義的屬性或行為,被特殊類繼承之后,可以具有不同數(shù)據(jù)類型或表現(xiàn)出不同的行為。就是程序在運(yùn)行時,會自動判斷對象的派生類型,并調(diào)用相應(yīng)的方法。7.封裝封裝就是把對象的屬性和服務(wù)結(jié)合成一個獨(dú)立的系統(tǒng)單位,并盡可能隱蔽對象的內(nèi)部細(xì)節(jié)。6.2類和對象6.2.1類的聲明類是C#的一種自定義數(shù)據(jù)類型,其聲明格式為:[類修飾符]class類名[:基類類名]{類的成員;}[;]說明:C#支持的類修飾符有:new、public、protected、internal、private、abstract、sealed。例:定義一個車輛

5、類(有三個變量)classVehicle{publicintpassengers;//乘客數(shù)publicintfuelcap;//所耗燃料publicintmpg;//每公里耗油量}6.2.2類的成員類可以分為兩大類:類本身所聲明的,以及從基類中繼承而來的。在C#中,按照類的成員是否為函數(shù)將其分為兩種:一種不以函數(shù)形式體現(xiàn),稱為成員變量;另一種是以函數(shù)形式體現(xiàn),稱為成員函數(shù)。1.類成員的訪問修飾符(1)public:允許類的內(nèi)部或外界直接訪問;(2)private:不允許外界訪問,也不允許派生類訪問,即只能在類的內(nèi)部訪問。如果沒有設(shè)定訪問修飾符,默認(rèn)為private;

6、(3)protected:不允許外界訪問,但允許派生類訪問;(4)internal:只有本類的成員才能訪問。(5)readonly:該成員的值只能讀,不能寫。也就是說,除了賦予初始值外,在程序的任何一個部分將無法更改這個成員的值。classClassA{publicinta;privateintb;protectedintc;publicvoidSetA(){a=1;//正確,允許訪問類自身公有成員b=2;//正確,允許訪問類自身私有成員c=3;//正確,允許訪問類自身保護(hù)成員}}classClassB:ClassA{publicvoidSetB(){ClassABa

7、seA=newClassA();BaseA.a=5;//正確,允許訪問基類公有成員BaseA.b=23;//錯誤,不允許訪問基類私有成員BaseA.c=68;//正確,允許訪問基類保護(hù)成員}}classClassC{publicvoidSetB(){ClassABaseA=newClassA();BaseA.a=5;//正確,允許訪問類的其他公有成員BaseA.b=23;//錯誤,不允許訪問類的其他私有成員BaseA.c=68;//錯誤,不允許訪問類的其他保護(hù)成員}}2.靜態(tài)成員與非靜態(tài)成員靜態(tài)成員是在聲明成員時在前面加上static保留字;非靜態(tài)成

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費(fèi)完成后未能成功下載的用戶請聯(lián)系客服處理。