(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,是独立的顶级接口

相关推荐
天天被压力18 分钟前
【跨市场数据实战 #08】可转债折价机会怎么筛:3个接口抓比价、列表和实时盘口
java·人工智能·python
aramae33 分钟前
MySQL内置函数(7)
开发语言·笔记·后端·mysql·其他
张某布响丸辣1 小时前
附件下载的安全边界:路径白名单、NAS 哨兵文件与 Redis Lua 一次性令牌
java·redis·redis lua·nas哨兵
YatHinLay2 小时前
Spring Boot + Calcite 实现跨库查询
java
酷炫码神2 小时前
MosMos 创意效果与能力边界展示
java
Wang's Blog2 小时前
Java 接入Redis: 使用Jedis操作Redis
java·服务器·redis
事圆则缓2 小时前
Java 8 Lambda、Stream、Optional 与 Android 边界:从回调语法到运行时兼容
android·java
shehuiyuelaiyuehao2 小时前
算法50,分治归并,数组中的逆序对
java·算法
烽学长2 小时前
(附源码)基于Springboot+vue的图书阅读分享系统的设计与实现
java·spring boot·后端
Ivanqhz2 小时前
数据搬运是性能关键
java·服务器·网络·人工智能·深度学习