关于C#中执行顺序的问题。
程序代码:namespace VirtualDemo
{
class Program
{
static void Main(string[] args)
{
B a = new B();
Console.ReadKey();
}
}
public class A
{
public A()
{
PrintFields();
}
public virtual void PrintFields()
{
}
}
public class B : A
{
int x = 1;
int y;
public B()
{
y = -1;
}
public override void PrintFields()
{
Console.WriteLine("x={0},y={1}", x, y);
}
}
}
这个输出结果是:x=1,y=0
请问是怎么得出来的???

