static void Main(string[] args) { Base b1 = new Base(); Child1 c1 = new Child1(); Child2 c2 = new Child2(); Base b2 = c1; Base b3 = c2; b1.Virtual(); b1.NonVirtual(); b2.Virtual(); b2.NonVirtual(); b3.Virtual(); b3.NonVirtual(); c1.Virtual(); c1.NonVirtual(); c2.Virtual(); c2.NonVirtual(); }