2014 03 16 虛方法和重寫方法

2021-06-21 00:13:06 字數 269 閱讀 6422

物件導向程式設計的三大特徵之一:多型,而實現多型的乙個主要表現形式就是子類重寫基類的虛方法或函式成員。

虛方法:關鍵字:virtual;虛方法的訪問修飾符不能是私有的,否則子類無法繼承和重寫;

重寫方法:關鍵字:override;重寫基類的虛方法時,訪問修飾符需要和基類虛方法保持一致;

(重寫和過載的區別:重寫是子類對基類虛方法的重寫,重寫時只改變虛方法的方法體;過載是方法名保持不變,改變方法的引數列表(和方法體))

子類中,用base.方法名,可以調取基類的虛方法;

虛方法重寫

1.例項解析 控制台程式 class program public class badlyconstructedtype this will be overridden in the derived type.public virtual void dosomething public class ...

虛方法 重寫方法和抽象方法

若乙個例項方法的宣告中含有 virtual 修飾符,則稱該方法為虛方法 virtual method 若其中沒有 virtual 修飾符,則稱該方法為非虛方法 non virtual method 在呼叫乙個虛方法時,該呼叫所涉及的那個例項的執行時型別 runtime type 確定要呼叫該方法的哪...

02 24 方法重寫與虛方法呼叫

前一篇隱藏的例項中,由於子類隱藏了父類的同名方法,如果不進行強制轉換,就無法通過父類變數直接呼叫子類的同名方法,哪怕父類變數引用的是子類變數。我們希望的是每個物件 各司其職 為了達到這個目的,可以在父類同名方法前加關鍵字virtual,表明這是乙個虛方法,子類可以重寫此方法 即在子類同名方法前加關鍵...