1.为什么List list = new ArrayList()?
也不是非常夸张的说,一定要用List代替ArrayList接收,只是说这样是良好的编码习惯,便于以后代码可能重构。
首先要明白接口和类的区别。List是接口,ArrayList是类,ArrayList继承并实现了List。
List有多个实现类,如 LinkedList或者Vector等等。现在你要的是ArrayList,以后可能会要改成List的其他实现类。那么这时,你就只需要将ArrayList改为需要的类即可。
便于程序代码的重构. 这就是面向接口编程的好处
2.如何更好的创建集合对象? --> 静态构造方法
过去:
List<String> list = new ArrayList<>();
现在:
List<String> list = Lists.newArrayList();
同理:
HashMap<Object, Object> objectObjectHashMap = Maps.newHashMap();
HashSet<Object> objects = Sets.newHashSet();
接口和类的区别:
原文链接: javacodegeeks
译文链接: http://www.importnew.com/12399.html