读书人

帮忙分析一个java小程序的运行结果,该

发布时间: 2012-04-23 13:17:38 作者: rapoo

帮忙分析一个java小程序的运行结果
程序如下,求大侠帮忙,其中涉及到很多细节,构造器的调用顺序,内部类什么的

Java code
class Egg2 {  protected class Yolk {    public Yolk() { System.out.println("Egg2.Yolk()"); }    public void f() { System.out.println("Egg2.Yolk.f()");}  }  private Yolk y = new Yolk();  public Egg2() { System.out.println("New Egg2()"); }  public void insertYolk(Yolk yy) { y = yy; }  public void g() { y.f(); }}public class BigEgg2 extends Egg2 {  private static Test monitor = new Test();  public class Yolk extends Egg2.Yolk {    public Yolk() { System.out.println("BigEgg2.Yolk()"); }    public void f() {      System.out.println("BigEgg2.Yolk.f()");    }  }  public BigEgg2() { insertYolk(new Yolk()); }  public static void main(String[] args) {    Egg2 e2 = new BigEgg2();    e2.g();  }} 


运行结果如下:
Egg2.Yolk()
New Egg2()
Egg2.Yolk()
BigEgg2.Yolk()
BigEgg2.Yolk.f()

求大侠帮忙,谢了!

[解决办法]
调试一下,就知道那就是哪行代码输出的!

读书人网 >J2SE开发

热点推荐