public class A { A(int i){} public static void foo(){} void bar(){foo();} } class B { B(){} B(int i){} void dac(){A.foo();} } class C extends B { C(){} } class D extends B { D(int i){} void zer() { A.foo(); } }