List和ArrayList

  

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

菜鸟码农,喜欢和谦虚爱学习积极向上的同学做朋友,请留言多指教。
原文地址:https://www.cnblogs.com/luoliuniankk/p/10000140.html