C電子教案第11章_第1頁
C電子教案第11章_第2頁
C電子教案第11章_第3頁
C電子教案第11章_第4頁
C電子教案第11章_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

本文格式為Word版,下載可任意編輯——C電子教案第11章

第4篇

面向?qū)Φ某滔笤O(shè)序第計11章第21章第13第1章4章繼承派生多態(tài)性與虛函與輸入輸出數(shù)流C+工具+

11章繼第承派生與11.111.21.311.41115.1.111.6711.81.91繼承與派生概念的派生類聲的明式方派類的生成派生類成構(gòu)員的問屬訪性生派類的造構(gòu)函和析構(gòu)數(shù)函多數(shù)重承基繼類派與生的轉(zhuǎn)類換繼承與組合繼在軟件開發(fā)中的承要重意義

面向象程對序計設(shè)4個主有要特:點抽象、封、裝繼承多態(tài)和。性要較好進(jìn)地行面向?qū)Τ滔笮蛴嬙O(shè),必需還了解向面對程象設(shè)序另計兩個外重特要征——承性和多態(tài)繼性。在本章中要主介有紹關(guān)繼承的知識,在12章第中將介紹態(tài)多性。面向象技對強調(diào)軟術(shù)件的可用重(性sotfwrareeuabsliity)。++C語言提了類的供繼機承制,決解了軟件重問用題

1。.11承與派生繼概的念C++中在重可用性是通繼過承inher(itacne這一機)制來現(xiàn)的實繼承是C。+的+一個重要組成分部一。類個包中了含若干據(jù)數(shù)成和成員函數(shù)員在。不同類中的,數(shù)成員據(jù)成和函數(shù)是員不同的。相有但時兩個類的內(nèi)容基相本同或有部分一同相。利用來原明的類S聲tudetn為基礎(chǔ)作再,加新的上容即可內(nèi),減以少重復(fù)工的作量。++提C供繼承的機就是為了制解這個決題。問第8在章舉了已的馬例來子明繼說承概的念見。圖11.示1。意

在C++中,所“謂承繼就〞在一個已存在是類的基礎(chǔ)上建的立個新的類。已一在存類的(例“如〞馬)為“基稱(b類aselacss〞或“父)類f(atherlcas)〞s新建立。的(例類如“公〞馬)為稱“派類(d生ervideclssa)或“子類(〞osncalss)〞見。1圖.12示。意1圖.11

圖1.12

一個

類從新已有的那里獲類得其已特有,性種現(xiàn)象稱這類為繼承的通。繼過承一個新,建類子從已有的父類那里獲得類父的性特。從一角另說度從已,的類(父有)類生產(chǎn)一個的新類,子為稱的類派。生類繼的是承用已有的來類立專用建類編程技術(shù)。的派生繼承了基類的所類有據(jù)成員數(shù)和員成函數(shù)并,可對成員作以必的增要或加調(diào)整一個。基類可以派生多個派出類生,一每派個生類可以作為基類再又派生出新派生類的,此基類和因生類是派對相而的言。以上紹的介最是簡的狀況:單一個派生類從只一個基類生派,這稱單為繼(承ingleishnritenac)e這種繼承關(guān),所系形成層的次是一個樹結(jié)形構(gòu)可,用以11圖.表示。

3圖1.13注請圖中意頭的方箭,在向本書約定中,頭箭示表承的繼方向從派,生指類向基。類

一個

生派類僅可不從一以個基派生類也,以從多可基類派生。一個派生類個兩有個或多個基類的稱為多重繼承m(luitpelihneritnac)e,這種繼承系所關(guān)成形結(jié)構(gòu)的如圖114所.示。

1圖

1.4

關(guān)基于和類派生的關(guān)系,可以表類為述:派類是基類生的具化體,基而類是則生類派的象。抽

圖1.15

11.2派類的生明方式聲設(shè)已假經(jīng)聲明一個基類了tSdeut,n此在礎(chǔ)上基通過繼承建立一單個生派S類tudetn:c1alssStudnte1:pbuilScutdetn//聲基明類是tuSedtn{ublpi:cvoiddspily_a(1)//新加增的成員函數(shù){ocut″aeg:″ageneld;cuto″ddressa″:addrednl};rpiatev:ntigae//;新增的數(shù)加成據(jù)str員nigdard;/新增加的數(shù)/成據(jù)}員;

類基名面前pu有bic的l稱“為用繼承公(pubilcinehrtinaec)。〞明聲生派的一類般式形為clsa派生s名類[繼承方:式]基類名派{類生增新的成員加};繼方式包承括:pubilc公用(的,pri)vaet(有的)和私potrceed(t受護(hù)的保,此)項是選可,的如不果寫項此則,認(rèn)為默rpiavt(私e有的)。

11.3生派的類成構(gòu)派類生的成員包中從括基繼承類過來成的和員己自增加成的員兩部分。大基在類包括中數(shù)據(jù)員和成成員函數(shù)(或數(shù)稱與據(jù)法方)部兩分,派類分生兩大為分:部一部分是從基繼承來類的員,成另一分是部在聲明派類生增加的部時分每。一分部分均別括包據(jù)成員和數(shù)成員函。數(shù)

圖1.16

實際

上并,不是把類基成的和派員生自類增加的己員簡單地加成在一就成起派生類。構(gòu)為一個派生造包括以類3下分工部作(:1)基類接收成員從派。生類基類全部的成把員(不包括構(gòu)造函數(shù)和構(gòu)函析數(shù))收過來,接就是說是也沒有擇的選,能不擇選收其中一部接分成員而舍,棄一另部分員成。要我們根據(jù)派求類的需生慎重要擇選基類使,余冗量最。事小上,實有些類是專作為基類門而計設(shè),的在計設(shè)時充分慮到派生類的要考求。2(調(diào))從整基接收的成類員接收。類基成是員序人員程能不擇選的但是程,序人員可以對些這成員作某調(diào)些整。

(3)在聲派生明類增時加的員成這。分內(nèi)容部很是重的要它表達(dá),派生類對基了功能的類擴(kuò)展要。根據(jù)需仔要細(xì)慮應(yīng)考當(dāng)增哪加成些員精,心設(shè)計此。外,聲在派生類明,一時般還當(dāng)自應(yīng)己定義派生的構(gòu)造函數(shù)和析構(gòu)函數(shù),類因構(gòu)為函數(shù)造析構(gòu)和函數(shù)不能是基從類繼承的。生派是基類類定的延續(xù)??梢韵嚷暳x明個基一,在類此基類中只提供某最基本的些功,能而外有些另功能并實現(xiàn),然后未聲在派明生時類入加某具些的功能體,形適用于某成特定一用的派生類。應(yīng)過通對基聲類的延明,將一個續(xù)抽的象類轉(zhuǎn)基成化具體的派類生因。此派,類生抽是象類基的具實表達(dá)

。

1.41派生成類員的問屬訪性既派生類中包然基含成類和派員生類己增自的加員,成就生產(chǎn)了兩部這成分員的關(guān)和系訪問屬的問性題在建。立派生類時候的,并

不是簡單把基類的地私有員直成接作派生類的為有成員私把,基的公類成員直接用作為派生類的公用成。員實際,上對基類員和成派類自生增加的己員成按是不同的則處原的。理

具體說,在論訪問屬性時討要,考以下慮幾種況情:(1)類的基成員函數(shù)訪問基類成員。(2派生類)的員函數(shù)成問訪派類自己生增的成員加(3)基。的類員函成訪數(shù)問派類的生員成。4()派類的成員生數(shù)訪問函類的成基員(。)5派生類外訪在派問類的生員成。(6)派生類外訪在問類基成的員。對第于()和第12()情種況,比簡較,單第8按章紹過的介規(guī)則處理即,:類的基成員函數(shù)以訪問可類成員基,生類的成員派函可以數(shù)問派訪類成員生私。有數(shù)據(jù)員只成能被一類同的成中函員數(shù)問訪,用公員可以被成界訪問外。

第(3種)情也比較況明確基類,成的員數(shù)函只訪能問基的成員,而不類訪能派問生的成類。第員(5)種況情也比明較,在派生類外確可以問派生訪的類公用員成而不,訪問派生能類私的有成員。對于第(4和)第(6)種況,情就微稍雜復(fù)一,也容些易混淆這。些涉到如何確定基牽類成員在的生派中的訪問類屬的性問,不題僅要慮考基對成員類聲所明訪問的性屬還,要考派生類所慮聲明的基類對繼的承式方根據(jù),兩個因素共同這決定類成員基派在類生的訪中屬性問。

前面已提:在派生到類,對基中類繼承方的可以式有pulbc(i用的公,p)irvtae(有私的)和portcteed(保的)護(hù)種。3不同繼的方式?jīng)Q

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論