public static void Main()
public class ClassB : ClassA
public virtual ClassA GetClass() => new ClassA();
public override ClassB GetClass() => new ClassB();
public interface IInterfaceA
public ClassA CreateClass()
public class ImplementaceInterfaceA : IInterfaceA
public ClassB CreateClass()