new的哪个类,就调用这个类中的override方法。

解决方案 »

  1.   

    “在调用A类的构造函数时调用的PrintFields();方法会调用到B类中的重写方法;”
    这句话其实不完整,在这里其实是子类B的构造函数运行前,需先运行父类A的构造函数,所以父类A中的PrintFields方法其实已经为子类B重写的了。若使用A a = new A();,那么将调用A的
    PrintFields方法输出:A。