class Dec26 {
public static void main(String[] args) {
short a1 = 6;
new Dec26().go(a1);
new Dec26().go(new Integer(7));
}
void go(Short x) { System.out.print("S "); }
void go(Long x) { System.out.print("L "); }
void go(int x) { System.out.print("i "); }
void go(Number n) { System.out.print("N "); }
}
出力:
i N
上記の例では、コンパイラが整数のボックスを解除してintオプションを選択する代わりに、拡大オプション(つまり、整数->数値)を選択するのはなぜですか?
ありがとう