c#为什么子类使用从父类继承的方法时,方法内部访问的是父类的成员


class A
{
     public int i=1;
     public void Fun1()
     {
          Console.Writeline("A");
     }
     public void Fun2()
     {
          Console.Writeline(this.toString());
          Console.Writeline("i="+this.i);
          this.Fun1();
     }
}

class B:A
{
     public new int i=2;
     public void Fun1()
     {
           Console.Writeline("B");
     }
}

class Test
{
     static void Main()
     {
          B b=new B();
          b.Fun2();
     }
}

输出结果:
B
i=1
A
为什么Fun2中this指向B但使用的成员却是A的成员

因为类B继承父类的的公有方法,又没有重写fun2,自然调用父类的方法了。