我正在阅读java.lang.ThreadLocal的源代码,我有两个问题如下。
答案 0 :(得分:1)
查看最早的JDK 1.2源代码,代码中的日期显示ThreadLocal出现在HashMap之前。
.imageA
由于它是同一作者,我怀疑他写了一个特定的,然后继续取代一般的。我不知道在这个版本之前是否有不同的HashMap实现,但如果有的话看起来像Josh Bloch不想使用它。
此外,通过使用 * <this is HashMap>
* @author Josh Bloch
* @author Arthur van Hoff
* @version 1.29, 04/22/99
* @see Object#hashCode()
* @see Collection
* @see Map
* @see TreeMap
* @see Hashtable
* @since JDK1.2
* <this is ThreadLocal>
* @author Josh Bloch
* @version 1.8 07/08/98
* @since JDK1.2
*/
ThreadLocal
之类的自定义函数来优化getEntryAfterMiss
的实现。因此,虽然稍后有另一个Map实现,但对于一般情况有利,你有这个高度自定义的地图实现已经有效。
至于你的第二个问题,http://www.geeksforgeeks.org/static-class-in-java/。