C 入門8 4 虛方法

2021-07-16 16:01:28 字數 695 閱讀 5509

若乙個例項方法的宣告中含有virtual修飾符,則稱該方法為虛方法。若其中沒有virtual修飾符,則稱該方法為非虛方法。

例項:建立乙個虛方法與乙個非虛方法,然後分別通過另乙個類繼承,並比較它們的呼叫結果。

using system;

using system.collections.generic;

using system.linq;

using system.text;//引用命名空間

using system.threading.tasks;

using system.collections;

public void novirtualmethod()

}class class2:class1//class2繼承class1

public new void novirtualmethod()

}static void main(string args)

}}

非虛方法的實現是一成不變的:無論該方法是在宣告它的類的例項上呼叫還是在派生類的例項上呼叫,實現均相同。與此相反,虛方法的實現可以由派生類(繼承的類)取代。取代所繼承的虛方法的實現的過程稱為重寫(override)該方法。在虛方法呼叫中,該呼叫所設計的那個例項的執行時型別確定了要被呼叫的究竟是該方法的哪一種實現。在非虛方法呼叫中,先關的例項的編譯時型別是決定性因素。

C 虛方法 抽象方法

首先在c 中虛方法的定義 public virtual void virtualmethod 只要在方法名前加上virtual,就宣告了該方法為虛方法,注意宣告為虛方法後再不能加上abstract,static關鍵字宣告 以下是插入乙個例項來說明虛方法與非虛方法的不同 public class a ...

C (筆記)虛方法

1.可在任何方法上新增virtual,例 virtual void play 2.繼承性 一旦基類中為虛函式,子類將不會為非虛函式 3.優缺性 宣告虛方法除了使程式慢一點點以外,沒有任何缺點 因為當我們使用基類的引用或指標呼叫基類中定義的某個函式時,我們並不知道該函式真正的物件是什麼型別 屬於哪個類...

C 初識虛方法

先學習方法替換 using system namespace 方法替換 public class student person class mainclass 在使用方法替換並且例項化物件的時候定義物件的類是不同的,要麼是子類,要麼是父類。虛方法 虛方法簡單說就是讓父類中定義的乙個方法 virtua...