Re: [問題] 關於泛型 資料型態的疑問
※ 引述《dreamnook (亞龍)》之銘言:
: ※ 引述《noapaov (單身漢)》之銘言:
: : 但我在使用泛型的時候, 範例如下
: : ArrayList obj = new ArrayList<Integer>();
: : 其實等同 ArrayList<Object> obj = new ArrayList<Integer>();
: : 表示我可以加入任何的物件到obj裡面, 這時執行obj.add("test");
: : 編譯器沒有報錯我的理解是因為我宣告的是ArrayList<Object> obj,
: 使用Eclipse
: http://i.imgur.com/NrOe0bP.png

: 當用ArrayList<Object>來宣告時,Compiler Error
: http://i.imgur.com/JYkk73H.png

: 在我看來ArrayList obj不等同ArrayList<Object> obj...囧>
確實是不一樣的,因為 Java 不支援共變性,可以看我回的上一篇…
你要寫這樣才會過編譯器 …
ArrayList<? extends Object> lt = new ArrayList<Integer>();
其實寫 …
ArrayList lt = new ArrayList<Integer>();
應是只等於寫 …
ArrayList lt = new ArrayList();
也就是不會用到泛型資訊 …
--
良葛格學習筆記
http://openhome.cc
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 49.215.51.149
※ 文章網址: https://www.ptt.cc/bbs/java/M.1432809187.A.858.html
→
05/29 10:30, , 1F
05/29 10:30, 1F
推
05/31 11:59, , 2F
05/31 11:59, 2F
→
05/31 11:59, , 3F
05/31 11:59, 3F
討論串 (同標題文章)
java 近期熱門文章
PTT數位生活區 即時熱門文章