繁体   English   中英

如何在Eclipse Java Debugger中跟踪变量的值

[英]How to track value of a variable in Eclipse Java Debugger

我想在Eclipse调试器中跟踪boolean(而不是Boolean)变量的值。

我需要知道它何时发生变化,为此,我需要通过所有执行来追踪它的价值; 不仅在它的范围内。

更具体地说:我有一个类(让我们称之为myClass ),带有一个名为isAvailable的布尔成员变量。 我的程序实例化4或5个myClass对象。 我希望在执行结束时,我所有对象的isAvailable值都设置为true 与我的怀疑相反, myClass对象之一的isAvailable设置为false。 我需要知道哪个(很多)方法设置isAvailable为false。

您可以在成员字段上设置观察点。 观察点就像一个断点,在访问或修改字段时暂停执行(您可以配置要停止的条件)。 参见http://www.vogella.com/articles/EclipseDebugging/article.html#advanced_watchpoint

您是否可以访问该课程所在的代码?

而不是使用变量使用setter和getters来访问它,而只是在setter上设置一个断点。

如果你只需要知道它何时发生变化就会设置一个条件断点并使表达式如下:

available != this.available

假设您的setter具有以下格式:

public void setAvailable(boolean available){
    this.available = available;
}

设置断点后,右键单击断点符号可以得到条件断点。

以下是有关条件断点的常见问题解答: http//wiki.eclipse.org/FAQ_How_do_I_set_a_conditional_breakpoint%3F

在设置isAvailable值的方法中放置一个断点。

当断点被击中时,您将有可能检查整个执行堆栈。 您还可以检查对象并确定涉及4个或5个实例中的哪个。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM