1 C#基础virtual,override和new的区别1_m0_55413404的博客-CSDN博客
2 C#基础virtual,override和new的区别2_m0_55413404的博客-CSDN博客
3 C#基础virtual,override和new的区别3_m0_55413404的博客-CSDN博客
4 C#基础virtual,override和new的区别4_m0_55413404的博客-CSDN博客
5 C#基础virtual,override和new的区别5(试题训练)_m0_55413404的博客-CSDN博客
class Program
{
static void Main(string[] args)
{
A0 b0 = new B0();
A0 c0 = new C0();
b0.MyMethod();
c0.MyMethod();
}
}
class A0
{
public A0()
{
MyMethod();
}
public virtual void MyMethod()
{
Console.WriteLine("This Method in Class A!");
}
}
class B0 : A0
{
public B0()
{
MyMethod();
}
public override void MyMethod()
{
Console.WriteLine("This Method in Class B!");
}
}
class C0 : A0
{
public C0()
{
MyMethod();
}
public new void MyMethod()
{
Console.WriteLine("This Method in Class C!");
}
}
输出结果:
详解请看1,2,3。