我经常在许多网站上看到,在使用Java中的集合时,导师会将代码编写为:
List al = new ArrayList();
List li = new LinkedList();
而不是
ArrayList al = new ArrayList();
LinkedList li = new LinkedList();
有没有具体的理由说明为什么这样写?它比以下写的更有优势吗?
答案 0 :(得分:4)
声明接口类型的变量而不是实现类的类型的优点是灵活性。您可以轻松替换实现接口的实例,而无需更改代码。
这是一般原则,并非特定于Collections框架。