调试Java应用程序时,在堆栈框架中显示变量的哪些信息

调试Java应用程序时,在堆栈框架中显示变量的哪些信息,第1张

调试Java应用程序时,在堆栈框架中显示变量的哪些信息

@是自应用程序启动以来的对象计数编号。因此,@ 1012表示自应用启动以来创建的第1012个对象。

它不是身份哈希码。

这里有一些证明:(我之所以这样说是因为我实际上不知道,但是我观察到了)

public static void main(String [] args) throws Throwable {    Object object = new Object();    Object object1 = new Object();    Integer foo = new Integer(5);    Object object2 = new Object();    String str = new String("bar");    System.out.println("pre :" + System.identityHashCode(object));    RuntimeException exception = new RuntimeException();    exception.printStackTrace(); //put breakpoint here}

输出:代码:789451787代码:java.lang.Object@2f0e140b

789451787 = 2f0e140b顺便说一下…

IntelliJ调试器的输出:

static = org.boon.core.MyClassargs = {java.lang.String[0]@**97**}object = {java.lang.Object@**98**}object1 = {java.lang.Object@**99**}foo = {java.lang.Integer@**100**}"5"object2 = {java.lang.Object@**101**}str = {java.lang.String@**102**}"bar"exception = {java.lang.RuntimeException@**103**}"java.lang.RuntimeException"

我凭经验知道这一点,但是我不知道实际的实现,但是我认为这与诸如此类的问题有关:

as3:调试时有意义的对象识别。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5565460.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-14
下一篇2022-12-14

发表评论

登录后才能评论

评论列表(0条)

    保存