类继承问题
public abstract class A
{
public A()
{
Console.WriteLine(´A´);
}
public virtual void Fun()
{
Console.WriteLine("A.Fun()");
}
}
public class B: A
{
public B()
{
Console.WriteLine(´B´);
}
public new void Fun()
{
Console.WriteLine("B.Fun()");
}
public static void Main()
{
A a = new B();
a.Fun();
}
}
输出是什么?答案:A B A()
a指向B的对象B已经重写了A中的Fun(),为什么a.Fun()结果是A.Fun(),是不是指向的是B中的A部分,有谁可以详细讲解一下吗?????