using System; public abstract class A { public abstract T Foo (); } public abstract class B : A { public override T Foo () { return default (T); } } public class C : B { static void Main () { } }