[爆卦]java arraylist宣告是什麼?優點缺點精華區懶人包

為什麼這篇java arraylist宣告鄉民發文收入到精華區:因為在java arraylist宣告這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者guestciel (mm)看板java標題Re: [問題] 宣告成List跟ArrayList...


※ 引述《inventorr (風之子)》之銘言:
各位大大 小弟想請教一下:
List list1 = new ArrayList();
ArrayList list2 = new ArrayList();

我想建立一個ArrayList物件
但list1用interface宣告 list2用類別宣告
這樣在實際應用有什麼區別 可否舉例說明一下

大謝 ^_^

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 76.125.177.17
PsMonkey:list1 只能當作 List 用 08/31 14:16
PsMonkey:兩者差異,通常設計 method 參數的時候才會有感覺.... 08/31 14:17

用推文太麻煩了...剛好今天話多解釋一下上面這段好了..(我猜測板大的意思啦~)
應是如果一個method的參數宣告為List
就代表可以吃所以實作List的類別(ex:ArrayList, Vector...)彈性較大...

還有個很好的例子就是 Object class..
可多研究一下API...想一下method們為何會這樣設計...

如有誤請見諒^^"

inventorr:但是list1不是應該也能用Arraylist裡的method跟屬性嗎? 08/31 18:27
inventorr:除了method傳參數型別外 還有其他不同嗎? 08/31 18:30
aids61517:list1只能使用List有的方法,但實際執行內容是ArrayList 08/31 19:41
aids61517:中的方法,如果List沒有,而ArrayList有的方法,list1 08/31 19:43
aids61517:去使用那個方法,會產生錯誤訊息 08/31 19:44
slalala:請參考繼承本觀念 08/31 21:37
slalala:哀呀 不是繼承 應該是實作QQ 08/31 21:46
inventorr:了解了 :) 09/01 04:11
etman395:這是多型的概念 09/01 15:18
XXOO:所以是說如果要用ArrayList才有(List沒有)的方法,一定要宣告 09/01 17:09
XXOO:成ArrayList list2 = new ArrayList(); 是這樣嗎-.-? 09/01 17:11
PsMonkey:==.==== 請多 try 程式碼 09/01 17:56
aids61517:樓樓上,是的,這個是多型的觀念 09/01 21:16
marcX:instanceof 判斷型態後再case成ArrayList也是可行的! 09/01 21:28
guestciel:好處等你長大就會懂了<-很玄...但是真的Orz... 09/01 23:29
guestciel:另你推文的問題樓上是正確答案..白話的關鍵字是"轉型" 09/01 23:33
guestciel:簡單例子..一般員工和主管都繼承職員抽象類別..在新增員 09/01 23:36
guestciel:工或主管時都習慣宣告成職員類別..最直接的好處是可以 09/01 23:39
guestciel:放在一個陣列裡用迴圈處理.. 09/01 23:40

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.204.119.66
※ 編輯: guestciel 來自: 123.204.119.66 (09/02 00:17)

你可能也想看看

搜尋相關網站