自分めも。だけどわかる人教えてください。 public static void main(String...args) { Integer a = 1; Long b = 2; Object result = method(a, b); // resultの型は? } static <T> T method(T a, T b) { return null; } このmethod(a, b)の型推論で、Tはどのような型に算出されるかという問題。 15.12.2.8 Inferring Unresolved Type Argumentsを追いかけながら進んでいく感じ。ただし、型推論の後半部分だけ。 おさらいしておくと、Integer, Long はそれぞれ下記のような宣言。 class Integer extends Number implements Comparable<Integer>