interface A { abstract void foo(); } interface B { abstract void foo(); } class C<T extends A & B> { void bar(T x) { x.foo(); } }