C++第11章繼承與派生ppt課件.ppt

C++第11章繼承與派生ppt課件.ppt

ID:58891018

大小:1.33 MB

頁(yè)數(shù):98頁(yè)

時(shí)間:2020-09-30

C++第11章繼承與派生ppt課件.ppt_第1頁(yè)
C++第11章繼承與派生ppt課件.ppt_第2頁(yè)
C++第11章繼承與派生ppt課件.ppt_第3頁(yè)
C++第11章繼承與派生ppt課件.ppt_第4頁(yè)
C++第11章繼承與派生ppt課件.ppt_第5頁(yè)
資源描述:

《C++第11章繼承與派生ppt課件.ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。

1、第11章 繼承與派生面向?qū)ο蟪绦蛟O(shè)計(jì)4個(gè)主要特點(diǎn)抽象封裝繼承:對(duì)現(xiàn)有的類重復(fù)利用多態(tài)性:在繼承的基礎(chǔ)上,使程序設(shè)計(jì)更加簡(jiǎn)單化關(guān)于軟件重用(復(fù)用)大多數(shù)工程都盡可能使用可以重用的部件軟件重用在以下層次中代碼功能模塊或類子系統(tǒng)應(yīng)用系統(tǒng)C++提供的大量庫(kù)函數(shù)是在功能級(jí)的重用MFC、OLE、ActiveX是在類一級(jí)的重用難度增加軟件重用的含義簡(jiǎn)單而言,就是以現(xiàn)成的程序模塊為基礎(chǔ),實(shí)現(xiàn)新的應(yīng)用系統(tǒng)小型模塊重用的示例各種庫(kù)函數(shù)在類中包含另一個(gè)類的對(duì)象成員重用的關(guān)注點(diǎn):現(xiàn)有的代碼(界面)不需修改能進(jìn)行屬性與方法的擴(kuò)充:實(shí)現(xiàn)一些新的功能,但又不需從底層開(kāi)發(fā)。能以規(guī)范的、標(biāo)準(zhǔn)的設(shè)

2、計(jì)進(jìn)行擴(kuò)充在類定義中包含其它類的對(duì)象成員(對(duì)象組合):可以重用其它類定義的成員,但設(shè)計(jì)與使用沒(méi)有統(tǒng)一的規(guī)范。C++支持重用的機(jī)制--類的繼承類的組合:在一個(gè)類中以另一個(gè)類的對(duì)象作為數(shù)據(jù)成員子對(duì)象是“部件”組合產(chǎn)生的新類對(duì)象“包含”子對(duì)象,因此新類對(duì)象具有子對(duì)象的屬性和功能新類對(duì)象能增加新屬性與新功能新類對(duì)象不能“修改”子對(duì)象的功能這是“對(duì)象組合”的限制類的“繼承”機(jī)制能通過(guò)“剪裁”派生需要的類classBirthDate//生日類{public:┆private:intyear;intmonth;intday;};classTeacher//教師類{public

3、:┆private:intnum;stringname;charsex;BirthDatebirthday;};繼承與派生的概念繼承就是在一個(gè)已存在的類的基礎(chǔ)上建立一個(gè)新的類已存在的類稱為基類(baseclass)或父類(fatherclass)新建立的類稱為派生類(derivedclass)或子類(sonclass)子類繼承了父類父類派生了子類派生類是基類的具體化基類則是派生類的抽象現(xiàn)實(shí)世界的例子派生類繼承了基類的所有數(shù)據(jù)成員和成員函數(shù),并可以對(duì)成員作必要的增加或調(diào)整一個(gè)基類可以派生出多個(gè)派生類,每一個(gè)派生類又可以作為基類再派生出新的派生類繼承的分類單繼承:一

4、個(gè)派生類只從一個(gè)基類派生多繼承:一個(gè)派生類從多個(gè)基類派生單繼承多繼承大學(xué)在冊(cè)人員實(shí)例在冊(cè)人員學(xué)生(單繼承)教職工(單繼承)兼職教師(單繼承)教師(單繼承)行政人員(單繼承)工人(單繼承)研究生(單繼承)行政人員兼教師(多重繼承)在職研究生(多重繼承)研究生助教(多重繼承)派生類的聲明方式一般形式class派生類名:[繼承方式]基類名{派生類新增加的成員};繼承方式public(公有的、公用的)private(私有的)protected(受保護(hù)的)默認(rèn)為private(私有的)//例1:classStudent//聲明基類{public://基類公用成員voidd

5、isplay(){cout<<″num:″<

6、的數(shù)據(jù)成員stringaddr;//新增加的數(shù)據(jù)成員};派生類的構(gòu)成從基類接收成員基類全部的成員接收過(guò)來(lái)(不包括構(gòu)造函數(shù)和析構(gòu)函數(shù))在設(shè)計(jì)時(shí)充分考慮到派生類的要求調(diào)整從基類接收的成員可以改變基類成員在派生類中的訪問(wèn)屬性同名覆蓋原則在聲明派生類時(shí)增加的成員派生類成員的訪問(wèn)屬性在討論訪問(wèn)屬性時(shí),要考慮以下幾種情況:基類的成員函數(shù)訪問(wèn)基類成員派生類的成員函數(shù)訪問(wèn)派生類自己增加的成員基類的成員函數(shù)訪問(wèn)派生類的成員派生類的成員函數(shù)訪問(wèn)基類的成員在派生類外訪問(wèn)派生類的成員在派生類外訪問(wèn)基類的成員派生類成員的訪問(wèn)屬性決定因素基類成員所聲明的訪問(wèn)屬性public、private

7、(私有的)、protected派生類所聲明的對(duì)基類的繼承方式public、private(私有的)、protected公有繼承(public)基類的public和protected成員的訪問(wèn)屬性在派生類中保持不變,但基類的private成員在派生類不可訪問(wèn)。派生類中的成員函數(shù)可以直接訪問(wèn)基類中的public和protected成員,但不能訪問(wèn)基類的private成員。派生類的對(duì)象只能訪問(wèn)基類的public成員。類成員的訪問(wèn)控制//例2:classStudent//聲明基類{public://基類公用成員voidget_value(){cin>>num>>name

8、>>sex;}voidd

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

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

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