arraylist的方法有哪些 為什么是List list = new ArrayList,而不直接用ArrayList?
為什么是List list = new ArrayList,而不直接用ArrayList?List是一個接口,ArrayList是一個類。ArrayList繼承并實現(xiàn)列表。List List=new
為什么是List list = new ArrayList,而不直接用ArrayList?
List是一個接口,ArrayList是一個類。
ArrayList繼承并實現(xiàn)列表。List List=new arraylist()創(chuàng)建一個arraylist對象并將其追溯到列表。此時,它是一個列表對象。不能再使用ArrayList具有但list不具有的某些屬性和方法。ArrayList=new ArrayList()創(chuàng)建一個保留ArrayList所有屬性的對象。為什么通常使用list=new arraylist()而不是arraylist=new arraylist()?問題是list有多個實現(xiàn)類,比如LinkedList或vector?,F(xiàn)在您正在使用ArrayList。也許有一天你需要切換到其他實現(xiàn)類?在這種情況下,您只需要更改這一行:List=newlinkedlist()其他使用List的代碼根本不需要更改。假設(shè)您開始使用ArrayList=new ArrayList(),您已經(jīng)做了一些更改,特別是在使用特定于ArrayList的方法和屬性時。如果沒有特殊要求,最好使用list=newlinkedlist()來促進(jìn)程序代碼的重構(gòu)。這就是面向接口編程的優(yōu)點