首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C# 進階(五):虛擬方法、覆寫與隱藏方法機制

     編輯:關於C語言

2. 虛擬方法

  • 基底類別方法加 virtual 允許派生類別覆寫。
  • C# 預設非虛擬,需顯式宣告(Java 預設皆虛擬)。
  • 派生類別覆寫必須加 override,否則編譯錯誤。
  • 欄位與靜態方法不可宣告為 virtual。

範例:三層覆寫

public class BaseClass { public virtual string GetUrl() { return "cnblogs.com"; } }
public class BaseClass2 : BaseClass { public override string GetUrl() { return "gosoa.com.cn"; } }
public class Test : BaseClass2 { public override string GetUrl() { return "www.gosoa.com.cn"; } static void Main() { Console.WriteLine(new Test().GetUrl()); } }
// 輸出:www.gosoa.com.cn

3. 隱藏方法

派生類別定義同名方法但未加 override,即隱藏基底方法。編譯時發出警告。若基底方法非 virtual,則隱藏為唯一選項。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved