class A1 {} class B1>>{ { T a = null; A1 b = a; } } class A {} class B>> { void bar(T x){ foo(x); } void foo(A x){} void foo(Object x){} }