public B() C c1 = new C(); } public void method(A a) { B b = new B(); b.sleep(); a.method(new D()); } } public class Y extends B { private A []a = new A[5]; private X var = new X(); protected Y instance; } public class A extends B { C c1, c2; public A() { c1 = new C(); } public void method(D d) { d.working(); } } public class X { private String s; public void m() { B var = new A(); double x – Math.sqrt(5); } }