型変数を特定しない場合は、ワイルドカード(?)を使用する
ワイルドカードに対して、以下の様に記述することでその境界を示すことが可能である
- 上限境界
- < ? extends データ型>
- 下限境界
- < ? super データ型>
境界の定められていないワイルドカードをコレクションの型パラメータとして使用した場合、そのコレクションに対する編集操作を記述すると、コンパイルエラーとなる。
上限境界に対しては、要素の追加が出来ない。ただし、上限の型のメソッド呼び出しは可能。
下限境界に対しては、下限と同じ型の要素が追加可能。ただし、下限の型のメソッド呼び出しは不可能。