java中LinkedList和List继承有什么区别?
2023-12-13 03:43:06
在Java中,LinkedList
和 List
是两个不同的概念。List
是一个接口,而 LinkedList
是实现了 List
接口的一个具体类。
- List 接口:
List
是Java集合框架中的一个接口,它表示有序的集合,允许重复元素。List
接口继承自Collection
接口,它扩展了Collection
接口,添加了有序性和索引访问元素的功能。- 常见的
List
实现类还包括ArrayList
、Vector
等。
public interface List<E> extends Collection<E> {
// ...
}
- LinkedList 类:
LinkedList
是List
接口的一个实现类,它基于链表数据结构实现。- 与
ArrayList
不同,LinkedList
的每个元素都包含对前一个和后一个元素的引用,因此可以实现快速的插入和删除操作。 LinkedList
在随机访问时性能相对较差,因为它需要遍历链表来找到指定索引的元素。
public class LinkedList<E> extends AbstractSequentialList<E> implements List<E>, Deque<E>, Cloneable, Serializable {
// ...
}
继承关系上,LinkedList
并没有直接继承 List
接口,而是通过实现 List
接口来达到对 List
功能的实现。
总结:
List
是一个接口,定义了有序的集合,可以包含重复元素。LinkedList
是List
接口的一个实现类,它通过链表数据结构实现了List
接口的功能。- 在选择使用
LinkedList
还是其他List
实现类(如ArrayList
)时,需要考虑具体的使用场景和性能需求。LinkedList
在插入和删除操作上可能更高效,而对于随机访问,ArrayList
通常更有优势。
文章来源:https://blog.csdn.net/weixin_43554580/article/details/134921542
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!