List
是一个接口,ArrayList
类是该接口的特定实现。
List<Object> listObject = new ArrayList<Object>();
有了这个,您可以在将来更改List
实现。List listObject
可以调用List
接口中声明的所有方法。将来,如果您不想ArrayList
实现List
,并用say a 更改它LinkedList
,您可以这样做:
List<Object> listObject = new LinkedList<Object>();
listObject
如果您已声明listObject
as接口类型,则不必更改使用的代码List
,也不必担心它会破坏其余代码,因为您可能使用了特定ArrayList
于此声明的内容:
ArrayList<Object> listObject = new ArrayList<Object>();
这称为对接口的编程,而不是对实现的编程。