java.util.ArrayList のソース コードを開いたのですが、理解できません。なぜ ArrayList がパラメーター化されているのに、elementData[] 配列が Object 型なのですか?
public class ArrayList<E> extends ... {
.........
private transient Object[] elementData;
.........
public boolean add(E e) {/*More code*/}
}
質問: なぜ elementData を次のように定義しないのですか:
private transient E[] elementData
※メリットとデメリットは?