class staticBinding

{

class A{ int x; public A() { System.out.print("w klasie A, x = "); System.out.println(x); } };

class B extends A{

class G{public G() { System.out.print(" w klasie G, zawartej w B, x = ");System.out.println(x);} }

class C extends A{

class H extends G{public H(){System.out.print(" w klasie H, zawartej w C, x = ");

System.out.println(x);}}; // end klasySPAN STYLE="background: #ff9966">System.out.println(x);}}; // end klasy H

public C (){System.out.println(" konstruktor klasy C, zawartej w B, x :=2");x = 2;

G gg= new G();System.out.println(" konstruujemy obiekt klasy H");H hh = new H();

System.out.println(" klasa C done"); }}; // end klasy C

public B(){x = 1;System.out.println("konstruktor klasy B, w klasie B x :=1");

System.out.println(" tworzymy obiekt klasy C dziedziczacej z A ");C cc = new C();

System.out.println("klasa B zrobione"); } }; // end klasy B

static B bb;

public static void main(String[] args) { staticBinding mm = new staticBinding();

System.out.println("Static Binding semantic of Java: 1, 1, 2");

System.out.println("tworzymy obiekt klasy B dziedziczacej z A");

bb = mm.new B(); System.out.println("end of Static Binding semantic of Java");}

} // koniec

ound: transparent">