它总是说最好使用如下所示的集合对象
1) List st = new LinkedList();
2) Map mp = new HashMap();
比
3) LinkedList st = new LinkedList();
4) HashMap mp = new HashMap();
我同意如上定义 (1,2) 我可以将相同的变量 (st,mp) 重新分配给 List
、Map
接口(interface)的其他对象
但在这里我不能使用仅在 LinkedList
中定义的方法,Hashmap
是正确的,因为它们对 List
不可见, map
。 (如有不妥请指正)
但是如果我定义一个 HashMap
或 LinkedList
的对象,我想用它来实现这些的一些特殊功能。
那为什么说创建集合对象最好的方式是(1,2)
最佳答案
因为大多数时候您并不需要特殊方法。如果您需要特殊方法,那么显然您需要引用特定类型。
今天的类(class):不要盲目应用编程原则而不动用自己的大脑。
关于java - 集合列表和子类初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14403367/