public abstract class AbsCl {}
public class ImplCl : AbsCl {}
public static void Main()
PrintAbs(default(ImplCl));
public static void PrintAbs(AbsCl? abs) { Console.WriteLine(abs?.GetType());}
public static void PrintT<T>(T? typ) where T : AbsCl { Console.WriteLine(typeof(T));}