Java動(dòng)態(tài)綁定和靜態(tài)綁定.doc

Java動(dòng)態(tài)綁定和靜態(tài)綁定.doc

ID:50826799

大?。?5.45 KB

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

時(shí)間:2020-03-15

Java動(dòng)態(tài)綁定和靜態(tài)綁定.doc_第1頁(yè)
Java動(dòng)態(tài)綁定和靜態(tài)綁定.doc_第2頁(yè)
資源描述:

《Java動(dòng)態(tài)綁定和靜態(tài)綁定.doc》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫(kù)

1、動(dòng)態(tài)綁定與靜態(tài)綁定當(dāng)子類(lèi)(Y)同時(shí)覆蓋了父類(lèi)(X)的屬性和方法時(shí),為什么“Xs=newY();”這里的s只可以調(diào)用Y中覆蓋X的方法,而不能使用Y中覆蓋X的屬性。這也是疑惑的關(guān)鍵。我先給出一個(gè)結(jié)論:父類(lèi)引用指向子類(lèi)對(duì)象時(shí),父類(lèi)與子類(lèi)同名的屬性和方法都會(huì)被覆蓋。(一般對(duì)屬性的覆蓋叫對(duì)屬性的隱藏)對(duì)于上面的結(jié)論我們來(lái)看你這個(gè)程序,既然屬性可以被覆蓋,那怎么s.i是用了父類(lèi)的變量值呢?這是關(guān)系到了java處理屬性和方法的不同機(jī)制引起的。先再給出一個(gè)結(jié)論:java對(duì)方法的調(diào)用是采取動(dòng)態(tài)綁定(運(yùn)行時(shí)才判斷)的方法,對(duì)屬性的調(diào)用是采取靜態(tài)綁定(編譯時(shí)就判斷)的方法。對(duì)于上面的結(jié)論我們來(lái)理解你的

2、程序“Xs=newY();”,這一句,也可說(shuō)是父類(lèi)引用指向子類(lèi)對(duì)象,也可以說(shuō)是子類(lèi)對(duì)象向上轉(zhuǎn)型為父類(lèi)引用。那在s使用屬性的時(shí)候是靜態(tài)綁定的,它是在編譯期就決定了這個(gè)屬性是屬于哪一個(gè)類(lèi)的對(duì)象了,所以在上面那句中的“Xs”也就是說(shuō)X類(lèi)中的屬性是用s來(lái)調(diào)用的,s就不能調(diào)用Y類(lèi)中的屬性,因?yàn)樗庆o態(tài)綁定了。而s使用方法時(shí)是動(dòng)態(tài)綁定的,所以s在調(diào)用方法的時(shí)候,java會(huì)去查看s這個(gè)時(shí)候的指向的對(duì)象是哪一個(gè),是Y類(lèi)對(duì)象就調(diào)用Y類(lèi)的方法,是X類(lèi)的對(duì)象就調(diào)用X類(lèi)的方法。所以這里s是指向了Y類(lèi)中的對(duì)象(“Xs=newY();”這句可知),則調(diào)用Y類(lèi)中的方法。好,上面對(duì)你的問(wèn)題講清了,下面再說(shuō)說(shuō)ja

3、va因?yàn)槭裁磳?duì)屬性要采取靜態(tài)的綁定方法。這是因?yàn)殪o態(tài)綁定是有很多的好處,它可以讓我們?cè)诰幾g期就發(fā)現(xiàn)程序中的錯(cuò)誤,而不是在運(yùn)行期。這樣就可以提高程序的運(yùn)行效率!而對(duì)方法采取動(dòng)態(tài)綁定是為了實(shí)現(xiàn)多態(tài),知道java是的多態(tài)是java的一大特色。多態(tài)也是面向?qū)ο蟮年P(guān)鍵技術(shù)之一,所以java是以效率為代價(jià)來(lái)實(shí)現(xiàn)多態(tài)這是很值得的。舉例說(shuō)明:運(yùn)行結(jié)果:

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

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

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(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)系客服處理。