版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第四章在 C# 中實(shí)現(xiàn) OOP 目標(biāo)理解類和對(duì)象理解成員變量及成員變量的調(diào)用使用構(gòu)造函數(shù)和析構(gòu)函數(shù)使用方法,方法的調(diào)用,方法的重載理解命名空間2對(duì)象屬性顏色價(jià)格型號(hào)行為起動(dòng)停車加速屬性顏色車輪數(shù)量行為行進(jìn)打鈴屬性顏色品種行為睡吃 3類類是一類對(duì)象的抽象,用于在程序中模擬現(xiàn)實(shí)生活的事物對(duì)象是現(xiàn)實(shí)中的事物如何描述現(xiàn)實(shí)的事物:特征和動(dòng)作,對(duì)應(yīng)類中的數(shù)據(jù)成員和方法語法:訪問修飾符 class / 類的主體示例:class Employee / 類的主體/ 成員變量/ 成員方法4各種命名法帕斯卡(pascal)命名法所有單詞首字母大寫如:Car GetX()用于類,方法,除私有成員變量外的其他成員變量的
2、命名枚舉,枚舉中的可選項(xiàng),結(jié)構(gòu)駱駝式命名法首字母小寫,后面單詞使用Pascal命名法如:_color yourName用于類的私有數(shù)據(jù)成員命名,并且以_開頭用于方法中聲明的變量,數(shù)組5各種命名法匈牙利命名法:最開始是變量類型,后面是帕斯卡命名法示例 objCar用于對(duì)象的命名6語法:成員變量訪問修飾符數(shù)據(jù)類型成員變量;privateprotectedinternalpublic_colormodel.priceintchar.bool class Employee /汽車的數(shù)據(jù)成員 public string Color; /顏色public string Model; /型號(hào)public f
3、loat price; /價(jià)格 訪問成員變量步驟 1:創(chuàng)建一個(gè)類的對(duì)象Car c=new Car();步驟 2:使用點(diǎn)號(hào)訪問成員變量c.Color=黑色; /設(shè)置汽車c的顏色c.price=1000000; /設(shè)置汽車c的價(jià)格7訪問修飾符 2-1Car 類private 成員protected 成員public 成員internal 成員Class 類只有 Class 類和 Car類都在同一程序集中,才可訪問internal成員不可訪問不可訪問可以訪問8訪問修飾符 2-2修飾符說明public所屬類的成員以及非所屬類的成員都可以訪問internal當(dāng)前程序集可以訪問private只有所屬類的成
4、員才能訪問protected所屬類或派生自所屬類的類型可以訪問9構(gòu)造函數(shù)1構(gòu)造函數(shù)是類的一種特殊方法,一般用于對(duì)類的數(shù)據(jù)成員進(jìn)行初始化。每次創(chuàng)建類的實(shí)例都會(huì)調(diào)用它。訪問修飾符() / 構(gòu)造函數(shù)的主體語法:/ 默認(rèn)構(gòu)造函數(shù)Car()_color = “black;示例:10參數(shù)化構(gòu)造函數(shù) 2訪問修飾符 () / 構(gòu)造函數(shù)的主體語法:(參數(shù)列表)/ 參數(shù)化構(gòu)造函數(shù)Car(string str) _color = “str”;示例:11析構(gòu)函數(shù)是用于執(zhí)行清除操作的特殊方法一個(gè)類只能有一個(gè)析構(gòu)函數(shù)析構(gòu)函數(shù)不能被繼承析構(gòu)函數(shù)不能被顯示或手動(dòng)調(diào)用,只能由系統(tǒng)的垃圾回收器自動(dòng)調(diào)用() / 析構(gòu)函數(shù)的主體語法
5、:Car示例:12方法 1 對(duì)象的行為接聽響鈴掛斷PickUp()./接電話Ring()./響鈴Hang()./掛斷13聲明方法 2語法訪問修飾符(可選),默認(rèn)情況下為 private訪問修飾符 返回類型 (參數(shù)列表)/ 方法主體如果不需要返回任何值,方法可能返回 void 數(shù)據(jù)類型14聲明方法 3.class Pointint x;int y;void Assign()System.Console.WriteLine(“輸入點(diǎn)的值);x = int.Parse(System.Console.ReadLine();y = int.Parse(System.Console.ReadLine();
6、.方法 Assign() 的定義 不返回任何值 (void) 不接收任何值 (Assign()Assign( ) 方法15調(diào)用方法 4語法對(duì)象名.方法名(參數(shù)列表);實(shí)例類中的方法點(diǎn)號(hào)16演示:示例 3調(diào)用方法 5private void Accept()Console.WriteLine(請(qǐng)輸入復(fù)數(shù)的實(shí)部); _r=int.Parse(Console.ReadLine();Console.WriteLine(請(qǐng)輸入復(fù)數(shù)的虛部);_i=int.Parse(Console.ReadLine(); /顯示復(fù)數(shù)值void showResult() Console.WriteLine(相加之和); C
7、onsole.WriteLine(_r+_i+i);/將兩個(gè)復(fù)數(shù)相加Complex Add(Complex c) c._r+=this._r;c._i+=this._i;return c;接收實(shí)部和虛部的值顯示實(shí)部和虛部的值請(qǐng)參閱對(duì)象的實(shí)例變量b與 c 相關(guān)聯(lián)STAThreadstatic void Main(string args)Complex a=new Complex();Complex b=new Complex();a.Accept();b.Accept();Complex e=a.Add(b);e.showResult();Console.ReadLine();17調(diào)用方法 6語
8、法return 表達(dá)式;return 語句 18方法重載 1重載:指允許存在多個(gè)同名函數(shù),而這些函數(shù)的參數(shù)表不同(或許參數(shù)個(gè)數(shù)不同,或許參數(shù)類型不同,或許兩者都不同) 作用:對(duì)不同數(shù)據(jù)執(zhí)行相似的功能例如:求最大值注意:參數(shù)表不同:是指參數(shù)個(gè)數(shù)不同或參數(shù)類型不同不能根據(jù)返回值不同進(jìn)行重載19方法重載2/基于參數(shù)不同的方法重載public int greatest(int x,int y) if(xy)return x;else return y;public int greatest(int x,int y, int z ) if(xy & xz) return x; else if(yx &
9、yz) return y; else return z; 具有不同數(shù)量的參數(shù)的方法重載20方法重載 3 /基于參數(shù)類型的方法重載public int greatest(int x,int y)if(xy)return x;else return y;public double greatest(double x,double y) if (xy)return x;else return y;具有不同類型的參數(shù)的方法重載21命名空間 1 英國(guó)澳大利亞紐卡斯?fàn)柤~卡斯?fàn)?2命名空間 6-2Class Manager long int salary; . . long int salary; . Cl
10、ass Manager命名空間 AdminDept命名空間 ITDeptAdminDept.ManagerITDept.Manager類庫23命名空間 2Class SamsungTelevisionClass SonyWalkmanClass SonyTelevisionClass SamsungWalkman長(zhǎng)名稱難以維護(hù)namespace Samsung class Television . class WalkMan . Samsung.TelevisionSony.Televisionnamespace Sony class Television . class WalkMan .
11、有條理,有結(jié)構(gòu)24命名空間 3namespace 命名空間的名稱 / 該名稱空間的所有類都放在這里。語法25命名空間 4namespace Samsung class Monitor public void SayName() Console.WriteLine(“我是sansung的顯示器:); STAThread static void Main(string args) / / TODO: 在此處添加代碼以啟動(dòng)應(yīng)用程序 / 26命名空間 5namespace Sony public class Monitor public void SayName() Console.WriteLine(“我是Sony的顯示器:); static void Main(string args)Samsung.Monitor sm = new Samsung.Monitor();Monitor m = new Monitor();sm.SayName();m.Sa
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026上半年安徽事業(yè)單位聯(lián)考淮北市市直及市轄區(qū)招聘94人備考題庫及1套參考答案詳解
- 2026江蘇蘇州市太倉市科技活動(dòng)中心(太倉科技館)招聘1人備考題庫參考答案詳解
- 藥店財(cái)務(wù)制度
- 2026中能建新疆能源發(fā)展有限公司所屬單位第一批社會(huì)招聘5人備考題庫及一套完整答案詳解
- 培訓(xùn)機(jī)構(gòu)整套財(cái)務(wù)制度
- 繼續(xù)教育財(cái)務(wù)制度
- 存貨盤點(diǎn)財(cái)務(wù)制度
- 2026廣東湛江市體育學(xué)校(湛江市體育運(yùn)動(dòng)學(xué)校)招聘4人備考題庫(編制)及答案詳解1套
- 快餐公司財(cái)務(wù)制度
- 賣酒旗艦店財(cái)務(wù)制度
- 呆滯存貨處理流程
- 互聯(lián)網(wǎng)+非遺項(xiàng)目商業(yè)計(jì)劃書
- GB/T 16895.6-2014低壓電氣裝置第5-52部分:電氣設(shè)備的選擇和安裝布線系統(tǒng)
- GB/T 11018.1-2008絲包銅繞組線第1部分:絲包單線
- GB 31633-2014食品安全國(guó)家標(biāo)準(zhǔn)食品添加劑氫氣
- 麻風(fēng)病防治知識(shí)課件整理
- 手術(shù)室物品清點(diǎn)護(hù)理質(zhì)量控制考核標(biāo)準(zhǔn)
- 消防工程監(jiān)理實(shí)施細(xì)則
- 權(quán)利的游戲雙語劇本-第Ⅰ季
- 衛(wèi)生部《臭氧消毒技術(shù)規(guī)范》
- 早期復(fù)極綜合征的再認(rèn)識(shí)
評(píng)論
0/150
提交評(píng)論