JDK源码阅读笔记: https://github.com/kangjianwei/LearningJDK 如何阅读源码,是每个程序员需要面临的一项挑战。 为什么需要阅读源码?从实用性的角度来看,主要有三个目的:第一,解决手头的新问题或者新需求;第二,真正理解一部分 ...
读源码时的思考 最近在看concurrent包下线程池的源码,当我看到ThreadPoolExecutor类的时候,发现了JDK源码的一个问题。以下是ThreadPoolExecutor类的addWorker方法的代码片段: 这段代码的功能是完全没有问题的,但是如果使用卫语句,代码的可读性就会更高了。那么什么是卫语句呢 欢迎关注微信公众号:万猫学社,每周一分享Java技术干货。 什么是卫语句 条 ...
2019-11-13 08:40 44 2460 推荐指数:
JDK源码阅读笔记: https://github.com/kangjianwei/LearningJDK 如何阅读源码,是每个程序员需要面临的一项挑战。 为什么需要阅读源码?从实用性的角度来看,主要有三个目的:第一,解决手头的新问题或者新需求;第二,真正理解一部分 ...
在用intelliJ IDEA阅读代码时,跟踪到例如java.io.File类文件时,在关键代码段总会出现 “compile code”字样,使人不能真正跟踪到代码内部去。 为解决此问题,如下操作: step1:下载jdk源码,src.jar 1.1 mac安装的jdk路径 :/System ...
直接看源码英文注释,遇到不会单词查词典,遇到不理解的语法对照中文版的jdk API http://tool.oschina.net/apidocs/apidoc?api=jdk-zh 这个翻译不一定对,但是可以提供参考 看类的注释,知道类大概作用。看完有些部分暂时不懂可以跳过,但是要标志 ...
简介 这篇文章主要讲述jdk本身的源码该如何阅读,关于各种框架的源码阅读我们后面再一起探讨。 笔者认为阅读源码主要包括下面几个步骤。 设定目标 凡事皆有目的,阅读源码也是一样。 从大的方面来说,我们阅读源码的目的是为了提升自己的技术能力,运用到工作中,遇到问题快速定位,升职加薪 ...
JAVA集合框架图 标题为包名,后面序号为优先级1-4,优先级递减 。 1、java.lang 2、java.util 3、java.util.concurrent 4、j ...
ConcurrentHashMap 1. 一些重要参数 1.1 MAXIMUM_CAPACITY参数 MAXIMUM_CAPACITY参数表示map的最大容量,默认为1 << ...
HashMap 1. 一些重要参数 1.1 serialVersionUID属性 serialVersionUID适用于java序列化机制。简单来说,JAVA序列化的机制是通过 判断类的 ...
String 1. value数组 用于存储String的字符。 @Stable注解表示变量最多被修改一次,称为“稳定的”。 2. checkBoundsOffCount和checkB ...