标签:
package com.mufeng.thetenthchapter;
class Egg {
private Yolk y;
public Egg() {
// TODO Auto-generated constructor stub
System.out.println("new Egg()");
y = new Yolk();
}
protected class Yolk {
public Yolk() {
// TODO Auto-generated constructor stub
System.out.println("Egg.Yolk()");
}
}
}
public class BigEgg extends Egg {
public class Yolk {
public Yolk() {
// TODO Auto-generated constructor stub
System.out.println("BigEgg.Yolk()");
}
}
public static void main(String[] args) {
new BigEgg();
}
}
new Egg() Egg.Yolk()
package com.mufeng.thetenthchapter;
class Egg2 {
private Yolk y = new Yolk();
public Egg2() {
// TODO Auto-generated constructor stub
System.out.println("new Egg2()");
}
protected class Yolk {
public Yolk() {
// TODO Auto-generated constructor stub
System.out.println("Egg2.Yolk()");
}
public void f() {
System.out.println("Egg2.Yolk().f()");
}
}
public void insertYolk(Yolk yy) {
y = yy;
}
public void g() {
y.f();
}
}
public class BigEgg2 extends Egg2 {
public BigEgg2() {
// TODO Auto-generated constructor stub
insertYolk(new Yolk());
}
public class Yolk extends Egg2.Yolk {
public Yolk() {
// TODO Auto-generated constructor stub
System.out.println("BigEgg2.Yolk()");
}
public void f() {
System.out.println("BigEgg2.Yolk().f()");
}
}
public static void main(String[] args) {
Egg2 e2 = new BigEgg2();
e2.g();
}
}
Egg2.Yolk() new Egg2() Egg2.Yolk() BigEgg2.Yolk() BigEgg2.Yolk().f()
标签:
原文地址:http://blog.csdn.net/u013693649/article/details/52116224