2012-03-01 3 views

答えて

3

コンパイラではないのでどんなタイプのものかを正確に推測することができます。あなたはなぜ、型を推論することはできませんコンパイラ

foo(Lists.<String>newArrayList()); 

で何をしたいタイプコンパイラに伝えることができますか?あなたはbar(newObject())を持っている場合、コンパイラはそれを呼び出す必要がありますどの方法を決定することはできませんこれらのメソッド

<T> T newObject(); 
void bar(Integer i); 
void bar(String s); 

を考えてみましょう。コンパイラは、現在可能なメソッドが1つしかない場合でも、呼び出すメソッドを見つける前にパラメータの型を知る必要があります。そうしないと、新しいオーバーロードメソッドがコードを壊します。

+0

多分私の質問があったはずです、なぜ型を推論することができません。 –

+0

ちょっと追加しました。 –

+0

ああ、感謝する、ありがとう –

0

ArrayListのインタフェースリストを実装

関連する問題