類的繼承和多態(tài)機(jī)制_第1頁(yè)
類的繼承和多態(tài)機(jī)制_第2頁(yè)
類的繼承和多態(tài)機(jī)制_第3頁(yè)
類的繼承和多態(tài)機(jī)制_第4頁(yè)
類的繼承和多態(tài)機(jī)制_第5頁(yè)
已閱讀5頁(yè),還剩1頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、類的繼承1 繼承的基本概念繼承性一面向?qū)ο蟮暮诵奶卣髦?繼承是由已有類創(chuàng)建新類的機(jī)制。x類的繼承機(jī)制是面向?qū)ο蟪绦蛟O(shè)計(jì)中實(shí)現(xiàn)軟件可重用行的最重要 手段x被繼承的已有類稱為父類或超類,所定義的新類稱為子類或派生類x子類中可以定義新的成員變量和成員方法,也可以對(duì)父類中的成員 變量和成員方法進(jìn)行更改,使類的功能得以擴(kuò)充。4在ja/a中,一個(gè)類只能繼承一個(gè)超類,稱為單繼承;一個(gè)超類可以派生 出多個(gè)子類。i繼承增加了軟件的可擴(kuò)充性,提高了軟件的可維護(hù)性丄通常將通用性的成員設(shè)計(jì)在祖先類,而將特殊性的成員設(shè)計(jì)在后代類中。2 繼承的實(shí)現(xiàn)1定義子類形式如下:修飾符class類名extends父類名成員變量聲明

2、部分成員方法聲明部分修飾符說(shuō)明類的訪問(wèn)權(quán)限(public是否是抽象類(abstract)或 最終類(final)類名表示通過(guò)繼承定義的新類 一個(gè)類智能繼承一個(gè)父類稱為單繼承2繼承原則x子類繼承父類的成員變量(實(shí)例成員變量和類成員變量)x子類繼承父類的成員方法(除構(gòu)造方法外)x 子類不能繼承父類的構(gòu)造方法,因?yàn)楦割惖臉?gòu)造方法用來(lái)創(chuàng)建父 類對(duì)象,子類需定義自己的構(gòu)造方法,用來(lái)創(chuàng)建自己的構(gòu)造方法x子類可以重新定義父類成員3父類成員的訪問(wèn)權(quán)限x 子類對(duì)父類的private成員沒(méi)有訪問(wèn)權(quán)限,但可以通過(guò)父類的非 private成員方法是用父類的成員變量。x 子類對(duì)父類的public和protected成員

3、具有訪問(wèn)權(quán)限。x 子類對(duì)父類的缺省權(quán)限成員訪問(wèn)權(quán)限已包圍界限分兩種情況:通 報(bào)可以訪問(wèn),異包拒絕訪問(wèn)。類中成員的訪問(wèn)權(quán)限體現(xiàn)了類封裝的信息隱藏原則,如果類中成 員僅限于該類的使用,則聲明為private;如果類中成員允許子類 使用,則聲明為protected ;如果類中成員允許所有類使用,則聲 明為public3. super 和 this 引用super:指明是引用父類中的成員this:指明是引用子類中的成員1super丄引用父類成員變量子類自動(dòng)繼承父類所有的成員變量super 成員變量名當(dāng)子類中沒(méi)有聲明與父類同名的成員變量時(shí),引用父類的成 員變量可以不使用super,但當(dāng)子類中聲明了與父類

4、中同名 的成員變量時(shí),為了引用父類的成員變量,必須使用super, 否則引用的是子類中的同名成員變量。丄調(diào)用父類成員方法子類自動(dòng)繼承父類所有的成員方法super 成員方法名(參數(shù)表)當(dāng)子類中沒(méi)有聲明與父類同名且同參數(shù)表的成員方法時(shí),調(diào) 用父類的成員方法可以不使用super;但當(dāng)子類中聲明了與 父類中同名且同參數(shù)表的成員方法時(shí),為了調(diào)用父類的成員 方法,必須使用super,否則調(diào)用的是子類中的同名且同參 數(shù)的成員方法。丄調(diào)用父類的構(gòu)造方法在子類的構(gòu)造方法中,可以通過(guò)super調(diào)用父類的構(gòu)造方法super(參數(shù)表)此處的參數(shù)表由父類構(gòu)造方法的參數(shù)表決定,并且super(參 數(shù)表)必須是子類構(gòu)造方法

5、體中的首條語(yǔ)句。2this可以使用this引用當(dāng)前成員對(duì)象的成員變量、成員方法和構(gòu)造方法丄訪問(wèn)成員變量this 成員變量名當(dāng)成員方法中沒(méi)有與成員變量同名的參數(shù)時(shí),this可以省略,但當(dāng)成員方法中存在與成員變量同名的參數(shù)時(shí),引用成員變量時(shí)其名前的this不能省略,因?yàn)槌蓡T方法中缺省的是引用方法中的參數(shù)。丄調(diào)用成員方法this 成員方法名(參數(shù)表)其中,成員方法名前的this可以省略£調(diào)用構(gòu)造方法this(參數(shù)表)在構(gòu)造方法中,可以通過(guò)this調(diào)用本類中具有不同參數(shù)表的構(gòu)造方 法。類的多態(tài)性多態(tài)性:指同一名字的方法可以有多種實(shí)現(xiàn),即不同的方法體。類的多態(tài)性提供了方法設(shè)計(jì)的靈活性和執(zhí)行的多

6、樣性。多態(tài)性通過(guò)方法的重載(overload)和覆蓋(override)來(lái)實(shí)現(xiàn)。1. 方法重載在一個(gè)類,多個(gè)方法具有相同的方法名,但卻具有不同的參數(shù)表,稱為方 法的重載。重載表現(xiàn)為同一個(gè)類的多態(tài)性。2. 重載方法中的參數(shù)表必然不同,表現(xiàn)為參數(shù)個(gè)數(shù)不同、參數(shù)類型不同或參 數(shù)順序不同。丄 通過(guò)方法重載,采用統(tǒng)一的方法可以執(zhí)行不同的方法名。丄 類的構(gòu)造方法也可以重載,在實(shí)例化對(duì)象時(shí),根據(jù)給出的參數(shù)表調(diào)用 相應(yīng)的構(gòu)造方法。4方法重載也可以出現(xiàn)子啊父類與子類之間,即子類中可以聲明與父類 中具有相同方法名,但具有不同參數(shù)表的成員方法。3. 方法覆蓋覆蓋是指子類重定義了父類中的同名方法。覆蓋表現(xiàn)為父類與子類

7、中之間 方法的多態(tài)性。如果父類中的方法體不適合子類,子類中可以重新定義之。 子類中定義的方法與父類中的方法具有相同的方法名和參數(shù)表,但具有不 同的方法體。父類和子類具有同名方法,稱子類方法覆蓋了父類方法。尋找執(zhí)行方法的原則是:首先從對(duì)象所屬類開(kāi)始,尋找匹配的方法;如果 當(dāng)前類中沒(méi)有匹配的方法,則依次在父類、祖先類尋找匹配方法。方法的多態(tài)性使類及其子類具有統(tǒng)一的風(fēng)格,通過(guò)重載使一個(gè)類中具有相 同含義的多個(gè)方法共用一個(gè)方法名,通過(guò)覆蓋使父類和子類中具有相同含 義的多個(gè)方法共用一個(gè)方法名。類的繼承性和多態(tài)性是類功能易于擴(kuò)充,并增強(qiáng)了軟件的可維護(hù)性。4. final類和final成員用final修飾的類不能被繼承,用final修飾的成員不能被覆蓋,用final修飾 的成員變量不能被修改。吐final類:出于安全性考慮,有些類不允許被繼承,稱為final類。 具有固定作用,用來(lái)完成某種標(biāo)準(zhǔn)功能的類。例如,系統(tǒng)類string、 byte和double就被稱為final類。類的定義已經(jīng)很完美,不需要再生成其子類

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論