# oracleJdk17SourceLearn **Repository Path**: outsidersss/oracle-jdk17-source-learn ## Basic Information - **Project Name**: oracleJdk17SourceLearn - **Description**: oracleJDK17源码阅读,像读书一样学习源码,添加注释记录笔记,这个feel😄~ - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 7 - **Created**: 2025-06-24 - **Last Updated**: 2025-06-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # oracleJdk17SourceLearn #### 介绍 1. oracleJDK17源码阅读,像读书一样学习源码,添加注释记录笔记,这个feel😄~ 2. 对于 ReentrantLock 和 AQS 以及 各种并发容器(还在不断更新中)笔者已经进行了源码层面的标注,为看不懂的同学提供思路; 3. 直接fork后,clone到你本地,导入 IDEA ,就可以直接搜索你想学习的类,进行源码阅读了,一边读一边注释上你自己的理解,源码也可以越读越厚; #### 为什么创建这个仓库 - 因为进阶Java都要学习JDK中常用容器(ArrayList、HashMap、阻塞队列、ConcurrentHashMap等)、锁等最常用工具的具体实现; - JDK源码初学难以看懂,需要不断反复,但是看的过程中不能做笔记,下次又忘了,反反复复效率低下; - 希望能够帮助想学习JDK源码的同学,可以直接fork我这个仓库,站在我的肩膀上可能学的更快一点; - 建议人手一份,周末无聊,少打一局王者,调试一个Java工具类,进步就在这不经意间发生了; #### 为什么要学习 JDK 源码 1. 面试肯定跑不掉的,锁的实现,各种并发容器的实现; 2. 弄懂原理不必慌,工作中不会因为理解不到位在写bug了; 3. 这可是JDK源码,经过千锤百炼的,不管多大的厂都是直接用的。我们可以学习优秀的代码是怎么写的,理解其中的思想和模式; #### 源码应该怎么看 1. 按需阅读;这也是笔者推荐的方式,毕竟JDK源码东西太多了,没有目的的阅读首先不容易看懂其次容易忘,当你带着问题去查阅收获贼大; 2. 多调试;源码我已经帮你搞好了,你直接导入,建个测试包就可以开搞了,看不懂就多调呗; 3. 不要光看,读完一遍将自己的理解记录在对应的位置,方便二次复习呀,这东西需要反复读的; **个人编程能力的进步不是一朝一夕就能实现了,现在的努力看似用不到,但在后续工作中当别人遇到问题你可以轻松的帮他解决,通俗易懂的给他讲明白,你是否会回忆起几年前的一个夜晚那个熬夜debug调试源码的自己。**