c#.net中类的覆写(OverRide)
![](/images/load.gif)
public class MyBase
![](/images/load.gif)
![](/images/load.gif)
![](/images/load.gif)
public virtual string Meth1()
![](/images/load.gif)
![](/images/load.gif)
![](/images/load.gif)
return "MyBase-Meth1";
![](/images/load.gif)
}
![](/images/load.gif)
![](/images/load.gif)
![](/images/load.gif)
...{
![](/images/load.gif)
![](/images/load.gif)
}
![](/images/load.gif)
public virtual string Meth3()
![](/images/load.gif)
![](/images/load.gif)
...{
![](/images/load.gif)
return "MyBase-Meth3";
![](/images/load.gif)
![](/images/load.gif)
}
![](/images/load.gif)
![](/images/load.gif)
![](/images/load.gif)
![](/images/load.gif)
...{
![](/images/load.gif)
![](/images/load.gif)
public override string Meth1()
![](/images/load.gif)
![](/images/load.gif)
![](/images/load.gif)
return "MyDerived-Meth1";
![](/images/load.gif)
}
![](/images/load.gif)
![](/images/load.gif)
// keyword:
![](/images/load.gif)
public new string Meth2()
![](/images/load.gif)
![](/images/load.gif)
...{
![](/images/load.gif)
return "MyDerived-Meth2";
![](/images/load.gif)
![](/images/load.gif)
// Because no keyword is specified in the following declaration
![](/images/load.gif)
// a warning will be issued to alert the programmer that
![](/images/load.gif)
![](/images/load.gif)
public string Meth3()
![](/images/load.gif)
![](/images/load.gif)
![](/images/load.gif)
return "MyDerived-Meth3";
![](/images/load.gif)
}
![](/images/load.gif)
![](/images/load.gif)
public static void Main()
![](/images/load.gif)
![](/images/load.gif)
![](/images/load.gif)
MyDerived mD = new MyDerived();
![](/images/load.gif)
MyBase mB = (MyBase) mD;
![](/images/load.gif)
![](/images/load.gif)
System.Console.WriteLine(mB.Meth1());
![](/images/load.gif)
System.Console.WriteLine(mB.Meth2());
![](/images/load.gif)
![](/images/load.gif)
}
![](/images/load.gif)
}