型推論の正解が分からない - しげるメモからの派生。 型推論で出現する無限型の取り扱いについて、SunのjavacとEclipseのJDTで微妙に動きが違う。 先ほどのエントリで、 method(T, T)にInteger, Longを渡すと、TはR = Number & Comparable<? extends R>となるような型Rに推論されると予測してます。それを踏まえて、現行のコンパイラがどうやって無限型を取り扱ってるのかなーと調査中。 void test() { Integer a = 1; Long b = 1L; bound0(a, b); bound1(a, b); bound2(a, b); bound3(a, b); infinite(a, b); } <T> void bound0(T a, T b) {} // 境界なし <T extends Number & Com