interface E {} interface F extends E { ArrayFactory ARRAY_FACTORY = null; } interface ArrayFactory { T[] create(int count); } interface Stub {} class M { public F[] get(Stub s) { return foo(s, F.ARRAY_FACTORY); } private T[] foo(Stub stub, ArrayFactory arrayFactory) { return null; } }