重寫 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 實現的優勢

推薦閱讀