class A{ public virtual void Display(){Console.WriteLine("A");}
}
class B:A{ public new void Display(){Console.WriteLine("B");} }
class C:A{ public override sealed void Display(){Console.WriteLine("B");} }
B类没有自己的Display方法,并且B类的子类也没有,子类不能重写Display;B类的Display方法中的代码不执行。
C类有自己的Display方法,但是C类的子类没有,子类不能重写Display
以上描述只在使用父类引用子类时有效。
A a = new B();
B b = new B();
a执行A类的Display方法。b执行B类的Display方法。