常见List 与ArrayList 之间,listarraylist
分享于 点击 21139 次 点评:73
常见List 与ArrayList 之间,listarraylist
常见的语句:
List <String > list = new ArrayList();
而不是写成:
ArrayList<String> list = new ArrayList();
????????
List是接口,
ArrayList是JDK里提供的一个实现类。
编译时类型是List,运行时类型是ArrayList,
而List接口的实现类不只有ArrayList一个,
用一个List类型的引用这是“面向接口编程”,
主要是尽量面向接口编程。
常会用到很多不是我们写的类,我们叫第三方类库,
在类库里面很可能会返回一个这样的列表,但是他未必会返给你一个ArrayList,
没准是人家自己写的一个实现类都说不准,那么我们面向接口编程,
不需要了解是什么实现类,我们都把它们当List接收过来就好了,
我们就当成List来用。提高程序的透明性,让底层的实现对上层使用者封装。
List <String > list = new ArrayList();
这是把ArrayList()向上转型为List,这时假的lst不能用ArrayList中新增的方法(即不是List接口的方法),如get()
ArrayList <String > list = new ArrayList();
如果我们在知道要创建一个ArrayList()的话,用这个方式创建就可以使用ArrayList里面的全部方法
相关文章
- 暂无相关文章
用户点评