class A<T extends B.C> { interface C {} } class B extends A<B.C>{}