8/10
今天的题感觉可以满分的,但是没做好

1、
图片说明
图片说明
equals:比较也是分三阶段比较,如果重写了的话
首先看地址,其次看类型,最后看内容

2、
图片说明

ThreadLocalMap中使用开放地址法+线性探索法:来处理散列冲突,而HashMap中使用的是分离链表法。
之所以采用不同的方式主要是因为:在ThreadLocalMap中的散列值分散得十分均匀,很少会出现冲突。并且ThreadLocalMap经常需要清除无用的对象,使用纯数组更加方便。

ThreadLocalMap通过key(ThreadLocal类型)的hashcode来计算数组存储的索引位置i。如果i位置已经存储了对象,那么就往后挪一个位置依次类推,直到找到空的位置,再将对象存放。另外,在最后还需要判断一下当前的存储的对象个数是否已经超出了阈值(threshold的值)大小,如果超出了,需要重新扩充并将所有的对象重新计算位置。

3、
图片说明

finally语句在catch的return语句执行之后执行,会先将return的数值保存起来,最后返回。