I thought it will call the derived class function because class will give importance to its own function but it is calling base class function please correct me...
class Baseclass { public void fun() { Console.Write("Base class" + " "); } } class Derived1 : Baseclass { new void fun() { Console.Write("Derived1 class" + " "); } } class Derived2 : Derived1 { new void fun() { Console.Write("Derived2 class" + " "); } } class test { static void Main(string[] args) { Derived2 d = new Derived2(); d.fun(); } }