C 之多型性1

2021-04-06 19:22:19 字數 1020 閱讀 8002

過載-類中定義的方法可能有不同的版本

public bool withdraw(double amt,string name)

public bool withdraw(double amt)

特點(兩必須一可以)

方法名必須相同

引數類標必須不相同

返回值型別可以不相同

虛函式

宣告虛方法

使用virtual關鍵字pubilc virtual bool withdraw(...);

呼叫虛方法,執行是將確定呼叫物件是什麼類的例項,並呼叫適當的覆寫 的方法

虛方法可以有實現體

覆寫(override)

子類中為滿足自己的需要來重複定義某個方法的不同實--覆寫

通過使用關鍵字override來覆寫

public orerride bool withdraw(...);

只有虛方法和抽象方法才能被覆寫

要求:(三相同)

相同的方法名稱

相同的引數列表

相同的返回值型別

區別items              override                               overload

位置                存在於繼承關係的類中       存在於同一類中

方法名            相同                                         相同

引數列表        相同                                      必須不同

返回值            相同                                      可以不相同

抽象方法(方法的原始定義)

抽象方法是必須被派生類覆寫的方法

抽象方法是可以看成沒有實現體的虛方法

如果類中包含抽象方法,那麼類就必須定義為抽象類,不論是否還包含其他一般方法

public abstract bool withdraw(...);

c 之 多型性

先看乙個例子 然後我們引進多型,看看 公升級的威力 1 include2 using namespace std 34 class liberation 10virtual intcombat 1114 private 15 intcapability 16 17class liberation a...

C 學習之多型性

類的幾個重要特性之一多型性,有著廣泛的用途。類的多型性包括 編譯時多型和執行時多型。編譯時多型表現為乙個同名的方法會根據引數型別 個數和位置的不同有不同執行效果。通過方法過載來實現。顧名思義,它由編譯器根據呼叫引數的不同,選擇相應的函式。執行時多型通過虛方法實現。表現為 相同的引數,仍會執行不同的函...

C 特性之多型性

c 多型性概括為 乙個介面,多種方法 程式在執行時才決定呼叫的函式,它是物件導向程式設計領域的核心概念。c 多型性是通過虛函式來實現的,虛函式允許子類重新定義成員函式,而子類重新定義父類的做法成為覆蓋或者重寫,重寫可以有兩種,直接重寫成員函式和重寫虛函式,只有重寫了虛函式的才能算作體現了c 多型性 ...