Gor*_*ush 33 java eclipse debugging
在调试时,Eclipse中的对象值附近显示了一个对象ID.
例如:28332是会话对象的ID.另一个示例:waiting for: (id=101)显示在"调试"面板中.这些ID既不是哈希码也不是哈希码System.identityHashCode.
有谁知道 - 如何获取this对象的id?
Dim*_*eou 27
我认为它们内部有一个IdentityHashMap<Object, Integer>,为每个对象分配一个唯一的(但无意义的)整数.这应该是Eclipse调试器的内部(不是对象具有的特殊id).你在问这个怎么样?
编辑:我会设置这样的断点(注意我不熟悉Eclipse):
System.identityHashCode(object)我感兴趣的对象.System.identityHashCode(object) == <whatever number you saw at the previous step>.这种情况很难停在错误的物体上.或者,如果您感兴趣的对象具有toString()您可以使用的适当表示,您也可以尝试使用它而不是System.identityHashCode(object).在所有情况下,您不必依赖Eclipse的内部对象ID,而是捕获id可以从对象本身派生的(或几乎).
| 归档时间: |
|
| 查看次数: |
13454 次 |
| 最近记录: |