本文从 Collection 与 Map 两条体系出发,画出集合框架的接口继承树,讲清 List/Set/Queue/Deque 的语义边界与 AbstractXXX 骨架类的价值;深入 ArrayList 源码拆解延迟初始化、1.5 倍扩容、Arrays.copyOf 与 transient elementData 的自定义序列化;用 modCount 与 expectedModCount 解释 fail-fast 与 ConcurrentModificationException 的成因,并给出四种正确删除元素的姿势;对比 HashSet、TreeSet、LinkedHashSet 的底层