型変数にまつわる文法上の記述

Android用語集

カテゴリー: Java  閲覧数:381 配信日:2013-06-23 11:33


混乱しやすい


型変数にまつわる記述はだいたい<>で囲われている。一見して同じように見えるが<>は場所によって数種類に分類される
- 種類 用語 宣言 バインド ? 境界 &
1 型変数の宣言 _ _ × △*1
2 型変数へのバインド _ new Hoge<String>(); × × × ×
3 変数の型の宣言 ジェネリック型(generic type) List<T> × ×
3 変数の型の宣言 パラメータ化された型(parameterized type) List<String> × ×
4 型変数での変数宣言 型変数の宣言 ジェネリック型(generic type) × × × × ×
*1:型変数の境界の型がジェネリックな型のときに?を扱える


<T> <E>


プログラムする際、具体的なクラス名に置き換えて使用する
<E> の場合は要素(Element)の型を指定するので「E」
<K,V> の場合はキー(Key)と値(Value)の型を指定するので「K」「V」
javaのジェネリックスでTとEの違いが良く分かりません

T for type, E for Element, V for value and K for key
Difference between List, List<?>, List<T>, List<E>, and List<Object>