7
public ArrayList(Collection<? extends E> c) {
elementData = c.toArray();
size = elementData.length;
// c.toArray might (incorrectly) not return Object[] (see 6260652)
if (elementData.getClass() != Object[].class)
elementData = Arrays.copyOf(elementData, size, Object[].class);
}
該代碼是java.util.ArrayList的構造。 你可以查看bug 6260652的詳細情況,這裏http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6260652爲什麼需要在ArrayList的構造中將類型轉換爲Object數組?
我的問題是如果我不轉換類型,會出現什麼問題?因爲我認爲elementData引用subType數組是完全可以的。