(Java基础)集合框架继承体系

一、集合框架的层级结构

Java 集合框架(Java Collections Framework, JCF)提供了一套用于存储和操作数据的接口和类。

核心思想是 统一接口,分层设计,主要分为两大顶级接口:

  1. Collection:表示单元素集合。

  2. Map :表示键值对集合(映射),独立于 Collection。

    复制代码
    java.lang.Object
       └─ java.util.Collection(接口)
              ├─ List(接口)
              ├─ Set(接口)
              └─ Queue(接口)
    
    java.lang.Object
       └─ java.util.Map(接口)
              ├─ HashMap
              ├─ TreeMap
              └─ LinkedHashMap

注意:Map 并不是 Collection 的子接口。


二、Collection 系列

Collection 是单元素集合的顶层接口,主要定义了增删改查等操作。

Collection 有三个主要子接口:

  1. List

    • 特点:有序、允许重复元素。

    • 典型实现:ArrayList、LinkedList、Vector

  2. Set

    • 特点:无序、元素不可重复。

    • 典型实现:HashSet、LinkedHashSet、TreeSet

  3. Queue / Deque

    • 特点:用于队列操作,有先进先出(FIFO)和双端队列(Deque)。

    • 典型实现:PriorityQueue、ArrayDeque、LinkedList


三、Map 系列

Map 是键值对映射的顶层接口,独立于 Collection。

主要特点:

  • 每个 key 唯一,value 可以重复

  • 常用操作:put、get、remove、keySet、values、entrySet

常用实现类:

  • HashMap:基于哈希表,无序

  • LinkedHashMap:保持插入顺序

  • TreeMap:基于红黑树,有序(按 key 排序)

  • ConcurrentHashMap:线程安全版本


四、集合框架整体层级图

复制代码
java.lang.Object
   └─ java.util.Collection(接口)
          ├─ List(接口)
          ├─ Set(接口)
          └─ Queue(接口)

java.lang.Object
   └─ java.util.Map(接口)
          ├─ HashMap
          ├─ TreeMap
          └─ LinkedHashMap

小贴士:

  • Collection 操作单个元素;Map 操作键值对

  • Collection 支持迭代器(Iterator);Map 可以通过 keySet()/entrySet()/values() 获取迭代器

  • Map 与 Collection 在框架中平级,但不属于同一个继承链


五、面试简述版本

Java 集合框架分为 Collection 和 Map 两大顶层接口:

  • Collection 处理单元素集合,有 List、Set、Queue 等子接口

  • Map 处理键值对集合,有 HashMap、TreeMap、LinkedHashMap 等实现

  • Map 不继承 Collection,是独立的顶级接口

相关推荐
ps酷教程1 小时前
Jackson 解决没有无参构造函数的反序列化问题
java
NiceCloud喜云1 小时前
Opus 4.8 的 Effort Control 怎么选:Low 到 Max 五档策略
android·java·大数据·前端·c++·python·spring
AI玫瑰助手2 小时前
Python函数:默认参数的定义与注意事项
开发语言·python·信息可视化
油炸自行车2 小时前
Claude Code 错误:API Error: 400 Failed to deserialize the JSON body into the
开发语言·javascript·json·trae·claude code·api error 400
肩上风骋2 小时前
C++14特性
开发语言·c++·c++14特性
_日拱一卒2 小时前
LeetCode:994腐烂的橘子
java·数据结构·算法·leetcode·深度优先
隔窗听雨眠2 小时前
Nginx网关响应慢排查手记
java·服务器·nginx
智慧物业老杨3 小时前
智慧物业合同周期管理系统:从风险预警到智能交接的全流程数智化落地方案
java·人工智能·python
源码宝3 小时前
MES系统源码:Java8 + SpringBoot2.7 + MySQL8 + Redis,后端源码清爽易扩展
java·后端·源码·springboot·mes系统·源码二开·mes源码
JAVA社区4 小时前
Java高级全套教程(十)—— SpringCloudAlibaba超详细实战详解
java·开发语言·spring cloud·面试·职场和发展