• 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心洋葱网用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!
  • 由于近期流量激增,小站的ECS没能经的起亲们的访问,本站依然没有盈利,如果各位看如果觉着文字不错,还请看官给小站打个赏~~~~~~~~~~~~~!

C# 中使用 override 和 new 关键字进行版本控制

OC/C/C++ 水墨上仙 1813次浏览

本示例演示了如何在 C# 中使用 override 和 new 关键字进行版本控制。版本控制有助于在基类和派生类的演变过程中维护它们之间的兼容性。

// versioning.cs
// 需要 CS0114
public class MyBase 
{
   public virtual string Meth1() 
   {
      return "MyBase-Meth1";
   }
   public virtual string Meth2() 
   {
      return "MyBase-Meth2";
   }
   public virtual string Meth3() 
   {
      return "MyBase-Meth3";
   }
}
class MyDerived : MyBase 
{
   // 使用 override 关键字重写虚方法 Meth1:
   public override string Meth1() 
   {
      return "MyDerived-Meth1";
   }
   // 使用 new 关键字显式隐藏
   // 虚方法 Meth2:
   public new string Meth2() 
   {
      return "MyDerived-Meth2";
   }
   // 由于下面声明中没有指定任何关键字,
   // 因此将发出一个警告来提醒程序员
   // 该方法隐藏了继承的成员 MyBase.Meth3():
   public string Meth3() 
   {
      return "MyDerived-Meth3";
   }
   public static void Main() 
   {
      MyDerived mD = new MyDerived();
      MyBase mB = (MyBase) mD;
      System.Console.WriteLine(mB.Meth1());
      System.Console.WriteLine(mB.Meth2());
      System.Console.WriteLine(mB.Meth3());
   }
}


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明C# 中使用 override 和 new 关键字进行版本控制
喜欢 (0)
加载中……