列表初始化方法

时间:2015-10-10 07:29:12

标签: java collections

List的这两个初始化有什么区别:

List<Integer> aa = new ArrayList<>();
ArrayList<Integer> aaa = new ArrayList<>();

1 个答案:

答案 0 :(得分:0)

多态性

第一个使用polymorphism将对象分配给类型为interface List的引用变量。这是首选。

在OOP中,最好将对象分配给最常用的超类或接口的变量。如果调用代码只需要List中定义的方法,而不是ArrayList中定义的其他方法,那么请使用List

这使您的代码可以自由切换到List的其他实现,而不是ArrayList,而不会破坏任何调用代码。

这是一个基本的Java 101概念,应该在Java教育中尽早掌握。