官术网_书友最值得收藏!

1.2.4 多態(tài)

多態(tài)是指兩個(gè)或多個(gè)屬于不同類的對(duì)象,對(duì)于同一個(gè)消息或方法調(diào)用所做出響應(yīng)的能力。面向?qū)ο笤O(shè)計(jì)也借鑒了客觀世界的多態(tài)性,體現(xiàn)在不同的對(duì)象可以根據(jù)相同的消息產(chǎn)生各自不同的動(dòng)作。例如,在“圖形”基類中定義了“繪圖”這個(gè)行為,但并不指定這個(gè)行為在執(zhí)行時(shí)畫出什么樣的圖形。派生類“橢圓”和“矩形”都繼承了圖形類的繪圖行為,但其功能卻不同:一個(gè)是要畫出一個(gè)橢圓,另一個(gè)是要畫出一個(gè)矩形。這樣一個(gè)畫圖的消息發(fā)出以后,橢圓類和矩形類的對(duì)象根據(jù)接收到這條消息后各自執(zhí)行不同的畫圖行為。如圖1-3所示,就是多態(tài)性的表現(xiàn)。

圖1-3 圖形多態(tài)性示例

具體到面向?qū)ο蟮某绦蛟O(shè)計(jì)而言,多態(tài)性(Polymorphism)是指在兩個(gè)或多個(gè)屬于不同類中具有相同的函數(shù)名對(duì)應(yīng)多個(gè)具有相似功能的不同函數(shù),有點(diǎn)拗口,換句話說,就是可以使用相同的調(diào)用方式來調(diào)用這些具有不同功能的同名函數(shù)。

繼承性和多態(tài)性的結(jié)合,可以生成一系列雖然類似但卻獨(dú)一無二的對(duì)象。由于繼承性,這些對(duì)象共享許多相似的特征;由于多態(tài)性,針對(duì)相同的消息,不同對(duì)象可以有獨(dú)特的表現(xiàn)方式,實(shí)現(xiàn)個(gè)性化的設(shè)計(jì)。

上述面向?qū)ο蠹夹g(shù)的幾個(gè)特征,為提高軟件的開發(fā)效率起著非常重要的作用,通過編寫可重用的、可維護(hù)的、可修改的、可共享的代碼等的方式,可以充分發(fā)揮面向?qū)ο蠹夹g(shù)的優(yōu)勢(shì)。

主站蜘蛛池模板: 富锦市| 莱州市| 芷江| 屯门区| 珠海市| 伊川县| 酒泉市| 海口市| 原阳县| 平和县| 进贤县| 元氏县| 寻乌县| 渭源县| 佛坪县| 韩城市| 云阳县| 陆丰市| 凤凰县| 义乌市| 鹿泉市| 肇东市| 黄梅县| 房山区| 锡林郭勒盟| 中阳县| 合江县| 桑日县| 施秉县| 海宁市| 台北县| 康保县| 嵊泗县| 灵丘县| 华阴市| 喜德县| 连平县| 广饶县| 宜宾市| 日照市| 华坪县|