1:你重新声明方法(new
); 如果override
它应该工作.该new
中断任何多态行为.
2:你正在重新实现界面; 这确实称为最高的实施.再次,override
将解决这个问题.
class Flugzeug : ILuftfahrzeug { public virtual void Starten() { Console.WriteLine("Das Flugzeug startet, " + Dings()); } protected virtual string Dings() { return "Flugzeug Dings"; } } class Motorflugzeug : Flugzeug { public override void Starten() { Console.WriteLine("Das Motorflugzeug startet, " + Dings()); } protected override string Dings() { return "Motorflugzeug Dings"; } }