一、多態(tài)
多態(tài)基于繼承(),現(xiàn)實(shí)事物中經(jīng)常可以看到人,而學(xué)生、工人、白領(lǐng)、宇航員等都是人,即由人演變而來的多種狀態(tài)。多態(tài)是Java三大特性(封裝、繼承、多態(tài))之一,它的出現(xiàn)豐富了完善了Java面向?qū)ο篌w系。由以下的代碼演示多態(tài)的特性:
由上面的多態(tài)演示代碼,就不得不說一下動(dòng)態(tài)綁定,動(dòng)態(tài)綁定是指在執(zhí)行時(shí)判斷鎖作用對(duì)象的實(shí)際類型。多態(tài)的實(shí)現(xiàn)基于動(dòng)態(tài)綁定,是指用基類的引用指向派生類的實(shí)例,當(dāng)調(diào)用方法時(shí)再確定是應(yīng)該調(diào)用基類的方法還是調(diào)用派生類的方法。附帶部分源碼如下:
上面代碼中由基類(Animal)、派生類(Fish、Tiger)組成,派生類重寫了move()方法。主方法(main)中分別創(chuàng)建了基類和派生類的實(shí)例,然后將它們加入同一個(gè)數(shù)組,最后觀察輸出結(jié)果可知,在循環(huán)(for)中都是用基類(Animal)類型的引用指代數(shù)組中的實(shí)例,但是在調(diào)用move()方法時(shí)卻有不同的表現(xiàn),這就是多態(tài)。多態(tài)就是用基類指代派生類,在實(shí)際調(diào)用時(shí)調(diào)用派生類的實(shí)現(xiàn)。
以上就是長(zhǎng)沙牛耳教育java培訓(xùn)機(jī)構(gòu)的小編針對(duì)“Java基礎(chǔ)學(xué)習(xí):java多態(tài)練習(xí)題”的內(nèi)容進(jìn)行的回答,希望對(duì)大家有所幫助,如有疑問,請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。
Java基礎(chǔ)學(xué)習(xí)