public class A{ public virtual void Fun1(int i){ conslole.Writeline(i); } public void Fun2(A a){ a.Fun1(i); Fun(5); } } public class B:A{ public override void Fun1(int i){ base.Fun1(i+1); } public static void Main(){ B b=new B(); A a=new A(); b.Fun2(a); } }