专注

导航

C# 类教程-继承:隐藏(new)

示例

   1:  public class BaseClass
   2:  {
   3:      public string GetString()
   4:      {
   5:          return "这是基类的一个方法。";
   6:      }
   7:  }
   8:   
   9:  public class DerivedClass : BaseClass
  10:  {
  11:      public new string GetString()
  12:      {
  13:          return "这是隐藏了基类 GetString() 的方法。";
  14:      }
  15:  }

可以看出隐藏使用的是关键字 new。目前,我们已经讲了:重载、重写、隐藏,但还看不出重写与隐藏的应用区别,我们将在类的多态性中讲到。下表列出了重载、重写、隐藏的显著特征区别:

重载 重写 隐藏
同一作用域。 基类与派生类之间。 基类与派生类之间。
方法名称相同,但参数个数或类型必须不同。 方法名称、参数个数和类型都必须相同。 方法名称、参数个数和类型都必须相同。
不需要修饰符。 基类中用 virtual,派生类中用 override。 基类中有无 virtual 均可,派生类中用 new。

posted on 2011-11-15 17:24  陈啊M  阅读(749)  评论(0编辑  收藏  举报