>>114 >>115
Karena:
class AnakKecil extends Orang {
  public AnakKecil(Dunia dunia) {
    this.dunia = dunia;
  }
  void ngambek();
}
class OrangBaik extends Orang {
  public OrangBaik(Dunia dunia) {
    this.dunia = dunia;
  }
  void kasih();
}
class Dewasa extends Orang {
  public Dewasa(Dunia dunia) {
    this.dunia = dunia;
  }
  void serakah();
}
class Orang {
  Dunia dunia;
  public Dunia getDunia() {return dunia; }
  void run();
}
class Dunia {
  Orang[] orang2;
  // ....
}
Lalu kejadiannya dunia:
Dunia ini = new Dunia(); 
Orang[] orang2 = new Orang[1e11];
for (double i = 0; i < 6e10; i++) {
  orang2[i] = new Anak(ini);
}
for (double i = 0; i < 4e10; i++) {
  orang2[i+6e10] = new Dewasa(ini);
}
ini.orang2 = orang2;
///
Dunia itu = new Dunia();
orang2 = new Orang[1e11];
for (double i = 0; i < 1e11; i++) {
  orang2[i] = new OrangBaik(itu);
}
itu.orang2 = orang2;
============
ku dan engkau adalah salah satu elemen dari 
*ini.orang2*
ku dan engkau punya akses ke dunia melalui getDunia() sayangnya hanya dunia dimana 
ku dan engkau sudah ditempatkan, yaitu di 
*ini*
Indahnya dunia 
*itu*