javaOOP的整理.doc_第1頁
javaOOP的整理.doc_第2頁
javaOOP的整理.doc_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

Java面向?qū)ο蠓庋b(encapsulation)A:為什么使用封裝?不適用封裝,我們沒有辦法對類的屬性進(jìn)行。所以我們將屬性封裝起來,增加一些方法來訪問屬性。B: 什么是封裝?封裝就是將屬性私有化,提供一些共有的方法訪問私有的屬性。C:怎樣封裝?修改屬性的可見性來限制對屬性的訪問,并為每一個屬性創(chuàng)建一對取值(getter)方法和賦值(setter)方法,用于對屬性的訪問。在賦值或者取值時加一些對屬性的存取限制。構(gòu)造方法(constructor)A: 構(gòu)造方法負(fù)責(zé)對成員的初始化工作,為實例變量賦予合適的初始值。以下規(guī)則它必須滿足:方法名與類名相同、沒有返回值類型。:實例化一個對象,其實就是去調(diào)用這個對象的構(gòu)造方法。C: 還有就是帶參數(shù)的構(gòu)造方法,在使用時:傳遞的值和構(gòu)造方法的參數(shù)必須在個數(shù)、數(shù)據(jù)類型、次序上相互匹配。我們通過調(diào)用帶參數(shù)的構(gòu)造方法,可以一并完成對象成員的初始化工作。簡化了對象初始化的代碼。方法的重載A: 在很多情況下我們需要為某個類編寫很多構(gòu)造方法,以便表現(xiàn)不同的初始化工作。這就是構(gòu)造方法的重載B: 執(zhí)行重載的方法時,java虛擬機先判斷給定的參數(shù)類型。然后決定執(zhí)行哪個方法。 繼承(extends)A: 父類中只是定義一些通用的屬性和方法,子類自動繼承父類的屬性和方法。子類也可以定義特定的屬性和方法。在父類中的方法,子類也可以重寫(override)方法重寫B(tài): 子類的構(gòu)造方法中,可以通過super關(guān)鍵字調(diào)用父類的構(gòu)造方法??梢酝瓿勺宇惖牟糠殖跏蓟ぷ?。C: 創(chuàng)建對象時,先創(chuàng)建父類對象,在創(chuàng)建子類對象。如果沒有顯式調(diào)用父類的構(gòu)造方法,將自動調(diào)用父類的無參構(gòu)造方法。D: 在子類中,顯式調(diào)用父類的構(gòu)造方法時,super語句必須放到構(gòu)造方法的第一條語句E: 如果子類重寫了父類的方法,可以在自己的方法里,通過supper關(guān)鍵字調(diào)用父類的方法。多態(tài)(Polymorphism)A: 為什么使用多態(tài)?增加代碼的可擴展性,可維護性。B: 什么是多態(tài)?多態(tài)是具有表現(xiàn)多種形態(tài)的嗎、能力特征。更術(shù)語的說法是:同一個實現(xiàn)接口 ,使用不同的實例而執(zhí)行不同的操C: 如何實現(xiàn)多態(tài)?1.把父類類型作為參數(shù)類型,把父類自己或其子類對象作為參數(shù)傳入??梢员苊饷恳粋€子類都傳一次。2.子類重寫父類的方法,使得其他類在于其父類接觸時,子類自己有不同的方法實現(xiàn)。3.運行時,根據(jù)實際創(chuàng)建對象類型動態(tài)決定使用那個方法。接口(interface)一個java接口是一個方法特征的集合,但沒有方法的實現(xiàn)。Java接口中的方法在不同的地方被實現(xiàn),可以有完全不同的行為。A: 使用接口時,注意以下幾點:1. java啊接口不能被實例化。2. java接口中聲明的成員自動設(shè)置為public,因此java接口中不能聲明privat成員。3. java接口中不能出現(xiàn)方法具體實現(xiàn)。4. 實現(xiàn)某個接口就必須實現(xiàn)其中定義的所有方法。B: 繼承與接口使用繼承或者java接口都可以為我們帶來很多多態(tài)性的好處,一般情況下,當(dāng)兩個類之間符合“is a”的關(guān)系時,并且子類可以重復(fù)使用父類的部分代碼,我們就是用繼承關(guān)系實現(xiàn),其他情況下我們選擇java接口實現(xiàn)。C: 面向接口編程面向接口編程就意味著:開發(fā)系統(tǒng)時主題構(gòu)架使用接口,接口構(gòu)成主體骨架。這樣就可以更換實現(xiàn)接口的類來更換系統(tǒng)實現(xiàn)。某個方法接受的參數(shù)類型為:接口。那么我們就可以傳遞任何一個接口的實現(xiàn)類來調(diào)用此方法。運行時,java虛擬機會根據(jù)實際創(chuàng)建的對象類型調(diào)用不同的方法實現(xiàn)。就意味著:可以通過更換實現(xiàn)接口的類來更換系統(tǒng)的實現(xiàn)。面向接口編程的優(yōu)點:可以實現(xiàn)接口、可以實現(xiàn)分離。能夠在客戶端未知的情況下修改實現(xiàn)代碼。那么神馬時候應(yīng)該抽象出java接口呢? 一種是用在層與層之間的調(diào)用,層與層之間最忌諱耦合度過高或者改變過于頻繁。設(shè)計優(yōu)秀的接口能夠解決這個問題。 另一種使用在那些不穩(wěn)定的部分上。如

溫馨提示

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

評論

0/150

提交評論