class BigEgg2只是用了方法insertYolk,至于它去怎样实现的完全是由父类
Egg2来实现的,BigEgg2并不需要理会里面用到了那些变量

解决方案 »

  1.   

    BigEgg2 extends Egg2,自然的BigEgg2拥有了insertYolk()方法,而且你并没有覆盖,也没有重载Egg2的insertYolk()方法,当你调用BigEgg2时,你当然就调用了其parent定义的insertYolk()方法了,这有什么奇怪的么?你看看经典的书,看书的时候仔细点,不然会害死你的。
      

  2.   

    也没有重载,自然你调用的就是Egg2定义的insertYolk()方法了,这一点都不奇怪么。
      

  3.   

    而且同private是无关的,它只是在此处作一个声明,说明在Egg2中有一个这样的调用,不然你的程序中的y 将无法找到。
      

  4.   

    其中还有一个问题,那就是将insertYolk(new Yolk());改为 new Yolk();的话结果输出的最后一行是Egg2.Yolk.f();
    这个是为什么?
    请大家帮着想想。