c 隱藏基類方法和重寫基類方法的區別

2021-06-06 21:13:04 字數 512 閱讀 8469

最近重新學習c#中基礎,找到了隱藏基類方法和重寫基類方法的一點區別,二者都是在派生類中定義了與基類中相同的方法,相同點派生類物件將執行各自的派生類中的方法,不同點,在向上轉型後,重寫基類方法的呼叫的是派生類的方法,而隱藏基類呼叫的是基類的方法,具體實驗**:

class program

//如果乙個方法被子類覆寫了 則子類和父類發生轉換時 自動呼叫已經被覆寫過的方法}

// 基類

class a2

public  void fun2()}

// 派生類

class b2 : a2

public  void fun2()}

執行結構:

向上轉型呼叫

b2--->fun1

a2--->fun2

基類a2呼叫

a2--->fun1

a2--->fun2

b2子類呼叫

b2--->fun1

b2--->fun2

請按任意鍵繼續. . .

c 隱藏基類方法和重寫基類方法的區別

最近重新學習c 中基礎,找到了隱藏基類方法和重寫基類方法的一點區別,二者都是在派生類中定義了與基類中相同的方法,相同點派生類物件將執行各自的派生類中的方法,不同點,在向上轉型後,重寫基類方法的呼叫的是派生類的方法,而隱藏基類呼叫的是基類的方法,具體實驗 class program 如果乙個方法被子類...

C 隱藏基類方法和重寫

本質上來說,是隱藏子類中基類的方法,但在子類中仍然可以訪問該功能。示例如下 namespace 隱藏基類和重寫 public class duck animal class program 執行結果為 值得注意的是,若在子類duck中不使用new,可以正常執行,但會生成乙個警告如下,說明隱藏了乙個基...

C 基類 派生類 方法隱藏 方法重寫

最近重新學習c 中基礎,找到了隱藏基類方法和重寫基類方法的一點區別,二者都是在派生類中定義了與基類中相同的方法,相同點派生類物件將執行各自的派生類中的方法,不同點,在向上轉型後,重寫基類方法的呼叫的是派生類的方法,而隱藏基類呼叫的是基類的方法,具體實驗 class program 如果乙個方法被子類...