电竞比分网-中国电竞赛事及体育赛事平台

分享

override(覆蓋)與overload(重載)

 lhzstudio 2012-05-12
override(覆蓋)用在繼承中:

首先override是繼承關(guān)系的基礎(chǔ)上的一種語(yǔ)法現(xiàn)象。override方法提供從基類(lèi)繼承的成員的新實(shí)現(xiàn)。

子類(lèi)可繼承父類(lèi)中的方法,而不需要重新編寫(xiě)相同的方法。但有時(shí)子類(lèi)并不想原封不動(dòng)地繼承父類(lèi)的方法,而是想作一定的修改,這就需要采用override


overload(重載)用在非繼承中:

方法重載是讓類(lèi)以統(tǒng)一的方式處理不同類(lèi)型數(shù)據(jù)的一種手段。

方法重載,就是在類(lèi)中可以創(chuàng)建多個(gè)方法,它們具有相同的名字,但具有不同的參數(shù)(返回類(lèi)型隨便)。調(diào)用方法時(shí)通過(guò)傳遞給它們的不同個(gè)數(shù)和類(lèi)型的參數(shù)來(lái)決定具體使用哪個(gè)方法, 這是編譯時(shí)多態(tài)性。



二者共同實(shí)現(xiàn)多態(tài)性的完整。override實(shí)現(xiàn)運(yùn)行時(shí)多態(tài),方法重載overload實(shí)現(xiàn)編譯時(shí)多態(tài)。

多態(tài)性
,主要表現(xiàn)在函數(shù)調(diào)用時(shí)實(shí)現(xiàn)“一種接口,多種方法”。

靜態(tài)多態(tài)性是通過(guò)重載機(jī)制來(lái)實(shí)現(xiàn)。是編譯時(shí)根據(jù)參數(shù)不同(函數(shù)名相同)調(diào)用不同的函數(shù),是在同一個(gè)類(lèi)中。

動(dòng)態(tài)多態(tài)性是通過(guò)虛函數(shù)機(jī)制來(lái)實(shí)現(xiàn)。是函數(shù)名相同,參數(shù)也相同,只能在運(yùn)行時(shí)才能確定的,是在具有一定繼承關(guān)系的不同類(lèi)中。C#里用override 與 virtual的搭配使用實(shí)現(xiàn)運(yùn)行時(shí)多態(tài)性(polymorphism )

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多