public static void Main()
var someSubclass = new SomeSubclassActiveState();
var someSubclassActiveState = someSubclass as IActiveState;
Console.WriteLine(someSubclass.BaseActive());
Console.WriteLine(someSubclass.Active);
Console.WriteLine(someSubclassActiveState.Active);
class BaseActiveState : IActiveState
public bool Active => true;
class SubclassActiveState : BaseActiveState
public new bool Active => false;
public bool Active => true;
class SomeSubclassActiveState : SomeClass, IActiveState
public new bool Active => false;