型パラメータの省略。
コンパイラは、ジェネリック型またはジェネリック メソッドの定義を見つけると、型パラメーターの出現箇所をすべて削除し、それらを左端の境界 (境界が指定されていない場合は Object 型) に置き換えます。
編集:この場合、私が理解しているように、左端の境界は、それが文字通り意味するもの、つまり境界のリストの最も左にあることを意味します。このポリシーが選択された理由を知りたいですか?
型パラメータの省略。
コンパイラは、ジェネリック型またはジェネリック メソッドの定義を見つけると、型パラメーターの出現箇所をすべて削除し、それらを左端の境界 (境界が指定されていない場合は Object 型) に置き換えます。
編集:この場合、私が理解しているように、左端の境界は、それが文字通り意味するもの、つまり境界のリストの最も左にあることを意味します。このポリシーが選択された理由を知りたいですか?
この場合、「左端」は専門用語ではありません。直訳すると「一番左」という意味です。これは単に、型パラメーターに次のようないくつかの境界 (制限) がある場合を意味します。
T extends Callable<Long> & Runnable
コンパイラは、出現するすべての型パラメーターT
を、最も左にある境界 (この場合はCallable<Long>
)に置き換えます。
アンジェリカの例のように、これは次のことを意味します。
private T task1, task2;
は次のように置き換えられます。
private Callable task1, task2;