我正在阅读代码Hashtable并且感到困惑并且有一些问题.我这样编码:
Hashtable table = new Hashtable();
table.put(table, 1);
int code = table.hashCode();
Run Code Online (Sandbox Code Playgroud)
我有两个问题:
当我hashCode像第三行代码一样调用方法时,为什么它不是无限循环?我认为这是一个无限循环.
当我调试这段代码时,我发现代码new Hashtable()会导致调用put方法,为什么?
根据我正在阅读的OpenJDK消息来源,有一个专门用于防范Hashtable包含自身情况的警卫.
我没有put在构造函数中看到任何引用.你有答案可以在你的答案中发布吗?
| 归档时间: |
|
| 查看次数: |
114 次 |
| 最近记录: |