黑马程序员技术交流社区

标题: 继承(二)--虚方法 [打印本页]

作者: 马毅    时间: 2012-12-23 21:57
标题: 继承(二)--虚方法
本帖最后由 Mayi 于 2012-12-23 23:29 编辑

    如若把一个方法用virtual关键字修饰,则该方法就是虚方法,可以在任何派生类中重写该方法,当然也可以有虚属性,例如:
  1.     class BaseClass
  2.     {
  3.         public virtual void Say()
  4.         {
  5.             Console.WriteLine( "这是基类中的虚方法");        
  6.         }
  7.         private string str;
  8.         public virtual string Str
  9.         {
  10.             get;
  11.             set;
  12.         }
  13.     }
  14.     class Class:BaseClass
  15.     {
  16.         public override void Say()
  17.         {
  18.             Console.WriteLine("这是派生类中的方法");
  19.         }
  20.     }
复制代码
由上例中可以看到,重写方法用override关键字,但不能将其用于字段和static函数
PS:1.重写之后会默认调用重写之后的方法。2.虚方法不能私有
其他C#基础请看这里





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2