{"id":25406190,"url":"https://github.com/NewbiesCamp/Java-Programmer-Advancement-Program","last_synced_at":"2025-10-31T02:30:23.000Z","repository":{"id":102119920,"uuid":"124371407","full_name":"NewbiesCamp/Java-Programmer-Advancement-Program","owner":"NewbiesCamp","description":"📚 Java 技术体系进阶指南 ，总结职场经验及感悟，积累技术面试","archived":false,"fork":false,"pushed_at":"2023-03-31T09:24:24.000Z","size":22026,"stargazers_count":453,"open_issues_count":0,"forks_count":104,"subscribers_count":17,"default_branch":"master","last_synced_at":"2025-01-24T12:32:07.516Z","etag":null,"topics":["algorithm","datastructures","interview","java","mysql","rocketmq","springboot"],"latest_commit_sha":null,"homepage":"https://javaer.vercel.app","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NewbiesCamp.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2018-03-08T09:51:17.000Z","updated_at":"2025-01-24T02:49:21.000Z","dependencies_parsed_at":"2023-05-03T11:01:30.635Z","dependency_job_id":null,"html_url":"https://github.com/NewbiesCamp/Java-Programmer-Advancement-Program","commit_stats":{"total_commits":551,"total_committers":16,"mean_commits":34.4375,"dds":0.6424682395644283,"last_synced_commit":"e4d74a05777a3246e1f3626663168c89ee09777e"},"previous_names":["553899811/newbie-plan","newbiescamp/java-programmer-advancement-program"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NewbiesCamp%2FJava-Programmer-Advancement-Program","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NewbiesCamp%2FJava-Programmer-Advancement-Program/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NewbiesCamp%2FJava-Programmer-Advancement-Program/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NewbiesCamp%2FJava-Programmer-Advancement-Program/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NewbiesCamp","download_url":"https://codeload.github.com/NewbiesCamp/Java-Programmer-Advancement-Program/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238018667,"owners_count":19402757,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["algorithm","datastructures","interview","java","mysql","rocketmq","springboot"],"created_at":"2025-02-16T05:07:48.685Z","updated_at":"2025-10-31T02:30:17.099Z","avatar_url":"https://github.com/NewbiesCamp.png","language":null,"readme":"# [Java 菜鸟训练营](https://newbiegroup.feishu.cn/wiki/OrTLwgXvrinsKTk3RGqcOlaWnze)\r\n\r\n# ⛳️  知识空间简介\r\n- 无论你是菜鸟还是老手，希望这里有关于 Java 你所关心的和你需要的。\r\n- 通过[飞书文档](https://newbiegroup.feishu.cn/wiki/OrTLwgXvrinsKTk3RGqcOlaWnze)来系统记录在学习 Java 过程中的收获和感悟，帮助正在工作或者正在面试的小伙伴。\r\n## ⭐️  常用文档和链接\r\n- [官网](https://newbiegroup.feishu.cn/wiki/OrTLwgXvrinsKTk3RGqcOlaWnze)\r\n- 子文档目录可能会随未来更新逐步改变。\r\n## 🧭 现阶段基调节奏\r\n- 目前处于刚开始阶段，文档大部分以知识模块划分，按照模块会推荐出网上优秀博客.\r\n- 重难点会自建文档来记录的形式\r\n- 尽快检索 最专业最实用的模块知识出来，用最快速度帮忙搭建知识体系为首要目的。\r\n## 💡  未来发展方向\r\n- 按照知识库 Wiki 的形式构建 Java 域涉及内容 \r\n- 深度研究中间件技术 - 用于技术拔高\r\n- 增加技术方案模块 - 用于面试场景\r\n\r\n# 目录\r\n\r\n## Java 基础 ☕\r\n\r\n### 面向对象\r\n\r\n- [Java 面向对象](https://www.pdai.tech/md/java/basic/java-basic-oop.html)\r\n\r\n### 泛型机制\r\n\r\n- [Java 泛型机制](https://www.pdai.tech/md/java/basic/java-basic-x-generic.html)\r\n\r\n### 注解机制\r\n\r\n- [Java 注解机制 (CSDN)](https://blog.csdn.net/weixin_43888891/article/details/126963074)\r\n- [Java 注解机制 (PDai)](https://www.pdai.tech/md/java/basic/java-basic-x-annotation.html)\r\n\r\n### 异常机制\r\n\r\n- [Java 异常机制 (PDai)](https://www.pdai.tech/md/java/basic/java-basic-x-exception.html)\r\n\r\n### 反射机制（核心）\r\n- [Java 反射机制 (PDai)](https://www.pdai.tech/md/java/basic/java-basic-x-reflection.html)\r\n- [Java 反射机制 (CSDN)](https://blog.csdn.net/weixin_45395059/article/details/126765905)\r\n- [Java 反射机制 (CSDN)](https://blog.csdn.net/JustinQin/article/details/119850304)\r\n\r\n### Java SPI 机制\r\n\r\n- [Java SPI 机制 (PDai)](https://www.pdai.tech/md/java/advanced/java-advanced-spi.html)\r\n## Java集合\r\n\r\n### 有序集合 List\r\n* **ArrayList:** 基于动态数组实现，随机访问效率高，插入和删除效率低。\r\n    * 参考链接: [腾讯云文章](https://cloud.tencent.com/developer/article/1792774)\r\n    * 参考链接:[程序员大本营](https://www.pdai.tech/md/java/collection/java-collection-ArrayList.html)\r\n* **LinkedList:** 基于双向链表实现，插入和删除效率高，随机访问效率低。\r\n    * 参考链接: [程序员大本营](https://www.pdai.tech/md/java/collection/java-collection-LinkedList.html)\r\n* **Vector:** 与 ArrayList 类似，但它是线程安全的，效率较低。\r\n    * 参考链接: [CSDN博客](https://szh-forever-young.blog.csdn.net/article/details/120509495)\r\n* **Stack:** 继承自 Vector，实现了栈的数据结构，后进先出 (LIFO)。\r\n    * 参考链接: [CSDN博客](https://blog.csdn.net/m0_37869177/article/details/88847569)\r\n###  Queue (FIFO) \r\n* **PriorityQueue:** 优先级队列，元素按照优先级顺序排序。\r\n    * 参考链接: [博客园](https://www.cnblogs.com/CarpenterLee/p/5488070.html)\r\n* **ArrayDeque:** 基于数组实现的双端队列，可以从两端添加和删除元素。\r\n    * 参考链接: [掘金博客](https://juejin.cn/post/6973280919918477320)\r\n### Set\r\n* **HashSet:** 基于 HashMap 实现，无序，不保证迭代顺序。\r\n    * 参考链接: [程序员大本营](https://www.pdai.tech/md/java/collection/java-map-HashMap\u0026HashSet.html)\r\n* **LinkedHashSet:** 基于 LinkedHashMap 实现，有序，按照元素添加的顺序存储元素。\r\n    * 参考链接: [程序员大本营](https://www.pdai.tech/md/java/collection/java-map-LinkedHashMap\u0026LinkedHashSet.html)\r\n* **TreeSet:** 基于 TreeMap 实现，有序，按照元素的自然顺序或自定义比较器排序。\r\n    * 参考链接: [程序员大本营](https://www.pdai.tech/md/java/collection/java-map-TreeMap\u0026TreeSet.html)\r\n\r\n### Map\r\n* **HashMap:** 基于哈希表实现，无序，不保证迭代顺序。\r\n    * 参考链接: [程序员大本营](https://www.pdai.tech/md/java/collection/java-map-HashMap\u0026HashSet.html)\r\n* **HashTable:** 与 HashMap 类似，但它是线程安全的，效率较低。\r\n    * 参考链接: [腾讯云文章](https://cloud.tencent.com/developer/article/1520582)\r\n* **LinkedHashMap:** 基于链表和哈希表实现，有序，按照元素添加的顺序存储元素。\r\n    * 参考链接: [程序员大本营](https://www.pdai.tech/md/java/collection/java-map-LinkedHashMap\u0026LinkedHashSet.html)\r\n* **TreeMap:** 基于红黑树实现，有序，按照键的自然顺序或自定义比较器排序。\r\n    * 参考链接: [程序员大本营](https://www.pdai.tech/md/java/collection/java-map-TreeMap\u0026TreeSet.html)\r\n* **WeakHashMap:** 键是弱引用，如果键没有其他引用，则会被垃圾回收。\r\n    * 参考链接: [程序员大本营](https://www.pdai.tech/md/java/collection/java-map-WeakHashMap.html)\r\n\r\n### Fail-Fast快速失败机制\r\n- [集合(Collection)中的并发修改判别机制](https://juejin.cn/post/6879291161274482695)\r\n\r\n\r\n### 数据类型\r\n - String \r\n   - [深入分析String原理](https://www.cnblogs.com/xiaoxi/p/6036701.html)\r\n - BitSet\r\n    - [深入解读 Java BitSet](https://cloud.tencent.com/developer/article/2424259)\r\n### 设计模式\r\n - [23种设计模式详细说明](http://c.biancheng.net/design_pattern/)\r\n    - [单例模式](/docs/notes/设计模式/单例模式.md)\r\n## 💻 操作系统\r\n - [操作系统基础知识](https://github.com/553899811/NewBie-Plan/tree/master/docs/notes/%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F/%E5%9F%BA%E7%A1%80%E7%9F%A5%E8%AF%86)\r\n   - [1.1 操作系统的基本概念](/docs/notes/操作系统/基础知识/1.1操作系统的基本概念.md)\r\n   - [1.2 操作系统的发展与分类](/docs/notes/操作系统/基础知识/1.2.操作系统的发展与分类.md)\r\n   - [1.3 操作系统的运行环境](/docs/notes/操作系统/基础知识/1.3.操作系统的运行环境.md)\r\n   - [1.4 操作系统的体系结构](/notes/操作系统/基础知识/1.4.操作系统的体系结构.md)\r\n   - [2.1 进程概论](/docs/notes/操作系统/基础知识/2.1进程概论.md)\r\n   - [2.2 线程概论](/docs/notes/操作系统/基础知识/2.2线程概论.md)\r\n   - [2.3 处理机调度](/docs/notes/操作系统/基础知识/2.3处理机调度.md)\r\n   - [2.4 内存管理](/docs/notes/操作系统/基础知识/3.1内存管理.md)\r\n - [Linux入门教程](http://c.biancheng.net/linux_tutorial/)\r\n## :cloud: 计算机网络\r\n - [计算机网络基础知识总结](https://blog.csdn.net/qq_34337272/article/details/81776275)\r\n - [计算机网络阶段性学习](https://blog.csdn.net/qq_35533401/article/category/7507100/)\r\n## 🤯 算法\r\n - 基础算法\r\n   - [自我总结-算法与数据结构](https://github.com/553899811/Algorithm-And-DataStructure)\r\n   - [LeetCode研发类面试专题](/docs/notes/算法与数据结构/LeetCode%20研发类面试专题)\r\n     - [1.深度优先搜索](/docs/notes/算法与数据结构/LeetCode%20研发类面试专题/1.深度优先搜索.md)\r\n     - [2.广度优先搜索](/docs/notes/算法与数据结构/LeetCode%20研发类面试专题/2.广度优先搜索.md)\r\n     - [3.链表](/docs/notes/算法与数据结构/LeetCode%20研发类面试专题/3.链表.md)\r\n     - [4.二叉树](/docs/notes/算法与数据结构/LeetCode%20研发类面试专题/4.二叉树.md)\r\n   - [剑指Offer](/docs/notes/算法与数据结构/剑指Offer%20笔记汇总)\r\n   - [算法与数据结构阶段性学习](https://www.geeksforgeeks.org/fundamentals-of-algorithms/)\r\n## :floppy_disk: 数据库\r\n - MySQL\r\n   - [MySQL存储引擎](/docs/notes/数据库/MySQL/MySQL存储引擎.md)\r\n   - [MySQL事务](/docs/notes/数据库/MySQL/MySQL事务.md)\r\n   - [MySQL索引](/docs/notes/数据库/MySQL/MySQL索引.md)\r\n   - [MySQL锁机制](/docs/notes/数据库/MySQL/MySQL锁机制.md)\r\n - Redis\r\n   - [Redis对象机制](/docs/notes/缓存/Redis/Redis对象机制.md)\r\n   - [Redis数据类型](/docs/notes/缓存/Redis/1.Redis数据类型)\r\n     - [1.1 string](/docs/notes/缓存/Redis/1.Redis数据类型/1.1%20string.md)\r\n     - [1.2 list](/docs/notes/缓存/Redis/1.Redis数据类型/1.2%20list.md)\r\n     - [1.3 hash](/docs/notes/缓存/Redis/1.Redis数据类型/1.3%20hash.md)\r\n     - [1.4 set](/docs/notes/缓存/Redis/1.Redis数据类型/1.4%20set.md)\r\n     - [1.5 zset](/docs/notes/缓存/Redis/1.Redis数据类型/1.5%20zset.md) \r\n   - [Redis持久化](/docs/notes/缓存/Redis/Redis对象机制.md)\r\n   - [Redis过期策略及内存淘汰机制](/docs/notes/缓存/Redis/Redis过期策略及内存淘汰机制.md)\r\n   - [Redis缓存穿透/击穿/雪崩](/docs/notes/缓存/Redis/Redis缓存穿透_击穿_雪崩.md)\r\n   - [Redis缓存一致性问题](/docs/notes/缓存/Redis/Redis缓存一致性问题.md)\r\n\r\n## :art: Java虚拟机\r\n - [1.类加载器子系统](docs/notes/Java虚拟机/1.类加载器子系统.md)\r\n - [2.运行时数据区与内存](/docs/notes/Java虚拟机/2.0%20运行时数据区与内存/2.1%20程序计数器.md)\r\n   - [2.1 程序计数器](/docs/notes/Java虚拟机/2.0%20运行时数据区与内存/2.1%20程序计数器.md)\r\n   - [2.2 虚拟机栈](/docs/notes/Java虚拟机/2.0%20运行时数据区与内存/2.2%20虚拟机栈.md)\r\n   - [2.3 本地方法接口](/docs/notes/Java虚拟机/2.0%20运行时数据区与内存/2.3%20本地方法接口.md)\r\n   - [2.4 本地方法栈](/docs/notes/Java虚拟机/2.0%20运行时数据区与内存/2.4%20本地方法栈.md)\r\n   - [2.5 堆](/docs/notes/Java虚拟机/2.0%20运行时数据区与内存/2.5%20堆.md)\r\n   - [2.6 方法区](/docs/notes/Java虚拟机/2.0%20运行时数据区与内存/2.6%20方法区.md)\r\n - [3.对象实例化内存布局与访问定位](/docs/notes/Java虚拟机/3.对象实例化内存布局与访问定位.md)\r\n - [4.直接内存](/docs/notes/Java虚拟机/4.直接内存.md)\r\n - [5.执行引擎](/docs/notes/Java虚拟机/5.执行引擎.md)  \r\n - [6.垃圾回收算法](/docs/notes/Java虚拟机/6.垃圾回收算法.md)    \r\n - [7.垃圾回收器](/docs/notes/Java虚拟机/7.垃圾回收器.md)  \r\n## :couple: Java多线程\r\n - [死磕Java并发](http://cmsblogs.com/?p=2611)\r\n - [Java并发性与多线程介绍目录](http://ifeve.com/java-concurrency-thread-directory/)\r\n - [Java并发之AQS详解](https://www.cnblogs.com/waterystone/p/4920797.html) \r\n - 并发数据结构\r\n   - Map\r\n     - [深度剖析ConcurrentHashMap原理](http://www.importnew.com/28263.html)\r\n   - Queue\r\n     - [深度剖析ArrayBlockingQueue原理](https://blog.csdn.net/zzp_403184692/article/details/8021615)\r\n     - [深度剖析LinkedBlockingQueue原理](https://blog.csdn.net/tonywu1992/article/details/83419448)\r\n## :bulb: 分布式\r\n - [分布式理论基础](https://github.com/xingshaocheng/architect-awesome/blob/master/README.md#%E5%88%86%E5%B8%83%E5%BC%8F%E4%B8%80%E8%87%B4)\r\n   - [分布式一致性算法](https://www.cnblogs.com/bangerlee/tag/%E5%88%86%E5%B8%83%E5%BC%8F%E7%B3%BB%E7%BB%9F/)\r\n   - [2PC与3PC及一致性概念](https://www.cnblogs.com/bangerlee/p/5268485.html)\r\n   - [CAP](https://www.cnblogs.com/bangerlee/p/5328888.html)\r\n   - [Paxos](https://www.cnblogs.com/bangerlee/p/5655754.html)\r\n   - [Raft与Zab](https://www.cnblogs.com/bangerlee/p/5991417.html)\r\n - [分布式锁专题](/docs/notes/分布式/分布式锁/分布式锁的实现.md)\r\n - [分布式事务专题](/docs/notes/分布式/分布式事务/分布式事务基础概念.md)  \r\n## :hammer: 工具\r\n - [Git](docs/notes/工具及组件/Git.md)\r\n## :speak_no_evil: 框架及实战\r\n - 框架\r\n   - [SpringBoot](https://spring.io/projects/spring-boot)\r\n     - [SpringBoot学习教程](http://cmsblogs.com/?p=2919)\r\n     - [SpringBoot常见面试题](/docs/notes/基础框架/Spring/SpringBoot常见面试题.md)\r\n\r\n## 鸣谢列表\r\n### Code Contributors\r\n\u003ca href=\"https://github.com/553899811/NewBie-Plan/graphs/contributors\"\u003e\u003cimg src=\"https://opencollective.com/NewBie-Plan/contributors.svg?width=890\u0026button=false\" /\u003e\u003c/a\u003e\r\n\r\n","funding_links":[],"categories":["Others"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FNewbiesCamp%2FJava-Programmer-Advancement-Program","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FNewbiesCamp%2FJava-Programmer-Advancement-Program","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FNewbiesCamp%2FJava-Programmer-Advancement-Program/lists"}