黑马程序员技术交流社区

标题: List 是个接口又是个类 不太明白? [打印本页]

作者: 不抛弃不放弃    时间: 2013-11-1 22:36
标题: List 是个接口又是个类 不太明白?
List 是个接口又是个类 不太明白?
作者: To    时间: 2013-11-2 00:03
具体自己的问题
作者: To    时间: 2013-11-2 00:03
具体自己的问题
作者: 零下五度的水    时间: 2013-11-2 00:20
List 是接口
代码里可以 List list = new ArrayList();因为ArrayList是List接口的实现类
但是List list = new List();这个是错的,因为List是接口,不能生成对象
List list 是说你别我管给你实例化的是什么对象,反正List有的东西我都有就是了,List没有的我也不会拿出来跟你说“哎,我会这个你让我表现一下呗”
作者: 王东    时间: 2013-11-2 00:23
List 接口是集合框架的,它是在java.util包下的一个接口。
而List类是关于图形化界面的,它是在java.awt包下的。
建议楼主多看一下API。
作者: hel    时间: 2013-11-2 00:24
List不是类,是一个借口。 ArrayList, LinkedList 是实现了这个借口的类。

List的功能方法

  List(interface): 次序是List最重要的特点;它确保维护元素特定的顺序。List为Collection添加了许多方法,使得能够向List中间插入与移除元素(只推荐LinkedList使用)。一个List可以生成ListIterator,使用它可以从两个方向遍历List,也可以从List中间插入和删除元素。

  ArrayList: 由数组实现的List。它允许对元素进行快速随机访问,但是向List中间插入与移除元素的速度很慢。ListIterator只应该用来由后向前遍历ArrayList,而不是用来插入和删除元素,因为这比LinkedList开销要大很多。

  LinkedList: 对顺序访问进行了优化,向List中间插入与删除得开销不大,随机访问则相对较慢(可用ArrayList代替)。它具有方法addFirst()、addLast()、getFirst()、getLast()、removeFirst()、removeLast(),这些方法(没有在任何接口或基类中定义过)使得LinkedList可以当作堆栈、队列和双向队列使用。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2