重写 hashcode真有那么简单嘛?( 四 )

不想写了,今天就先结束吧 , 呼应一下开头,看看都涉及到哪些知识点 , 下次再遇到这样的八股文,一开口就能聊几个小时 。
1、hashcode() 方法是 native 关键字修饰的 , 你有了解过嘛、Java方法和本地方法有什么不同、为什么要注册本地方法呢?
2、Object类中并没有hashcode() 方法源码,真正的源码应该去哪里看
3、jdk 源码目录 , 你真正打开过jdk源码嘛
4、 hashcode() 源码上有 @seejava.lang.System#identityHashCode 。那你知道 这两个方法有什么区别嘛
5、hashcode() 方法一定要重写,强调的是和hash表相关,那你知道源码中都是这么体现的嘛
6、hashcode() 手写实现,需要有什么功底呢?
7、调用了 String 的 hashcode() 去实现 , 那你知道 String#hashcode() 中为什么要用常数 31 嘛
【重写 hashcode真有那么简单嘛?】8、如果不从写 hashcode() 会发生什么呢
9、Objects#hash()实现和 String 的 hashcode() 有什么异同呢
10、hashmap 中的 hash算法和 hashcode 有什么关系呢,hahscode会不会影响到 hash算法的结果?
11、如果hashcode() 每次返回的数是一个随机数,会发生什么 。
12、为什么先比较 hashcode() 在比较 equlas能提高效率呢?List 集合比较的弊端、Map key 实现的优势

推荐阅读