類和對象的多態(tài)_第1頁
類和對象的多態(tài)_第2頁
類和對象的多態(tài)_第3頁
類和對象的多態(tài)_第4頁
類和對象的多態(tài)_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

類和對象的多態(tài)類和對象的多態(tài)

什么是類什么是對象繼承多態(tài)11什么是類類(class)是構(gòu)造對象的模版或藍圖。簡單理解就是“人類”是一個類,小明這個人就是該類的一個對象。由類構(gòu)造(construct)對象的過程成為創(chuàng)建類的實例(instance)。2對象是類的一個實例,有狀態(tài)和行為。例如,小明是一個對象,他的狀態(tài)有:姓名、身高、體重等;行為有:跑、跳、吃等。32什么是對象3繼承4關(guān)鍵字extends表示繼承。關(guān)鍵字extends表明正在構(gòu)造的新類派生于一個已經(jīng)存在的類。已存在的類稱為超類(superclass)、基類(baseclass)或父類(parentclass);新類稱為子類(subclass)、派生類(derivedclass)或孩子類(childclass)。子類比超類擁有更多的功能和內(nèi)容。都知道Object是最大的超類,Java中的所有類都直接或間接的繼承了Object類,而Object類中只有11個方法和1個構(gòu)造方法而String類中包括構(gòu)造方法在內(nèi)有80多個方法還不包括從Object中繼承的方法。也就是說String類中總共有近百個方法。4多態(tài)5多態(tài)是指允許不同類的對象對同一消息做出響應(yīng)。即同一消息可以根據(jù)發(fā)送對象的不同而采用多種不同的行為方式。(發(fā)送消息就是函數(shù)調(diào)用)實現(xiàn)多態(tài)的技術(shù)稱為:動態(tài)綁定(dynamicbinding),是指在執(zhí)行期間判斷所引用對象的實際類型,根據(jù)其實際的類型調(diào)用其相應(yīng)的方法。如:在使用newString("Hello")構(gòu)造String的一個實例時,程序會自動的選用String(String

original)

構(gòu)造方法,而不會選用其他的構(gòu)造方法。4多態(tài)6多態(tài)存在的三個必要條件:1、要有繼承;2、要有重寫;3、父類引用指向子類對象簡單的講就是可以將一個子類的對象賦值給超類對象。比如,所有的蘋果都是水果,但是,有些水果不一定是蘋果。一個蘋果中必定包含了水果的所有特點,這也可以解釋為什么子類對象可以賦值給超類對象。但是水果不一定具有蘋果的特點,因為水果是一個比較公共的對象,所以反過來進行賦值操作,編譯器會報錯的。

4多態(tài)7上面的代碼中定義了三個類:水果、西瓜、桃子。西瓜和桃子都繼承自水果類,水果中有兩個域(屬性):c

溫馨提示

  • 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

提交評論