Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Eclipse:Debugger:当成员变量更改值时通知的一种方法?_Java_Eclipse_Debugging - Fatal编程技术网

Java Eclipse:Debugger:当成员变量更改值时通知的一种方法?

Java Eclipse:Debugger:当成员变量更改值时通知的一种方法?,java,eclipse,debugging,Java,Eclipse,Debugging,我正在尝试调试一个复杂的应用程序。问题是对象的成员变量在某个未识别的点被设置为null。这个成员变量有setter和getter,但也有许多地方可以直接访问和清除它 Eclipse调试器是否有一种方法可以在该成员变量的值发生更改时通知我?正如duffymo在评论中建议的那样,您可以添加一个监视表达式 例如,选择要跟踪的变量,然后单击鼠标右键。在菜单中,您将找到监视选项。您可以在“(x)=变量”窗口(调试透视图)中的对象引用层次结构中导航。从这里,您还可以在给定的实例属性上添加“watch”。右C

我正在尝试调试一个复杂的应用程序。问题是对象的成员变量在某个未识别的点被设置为null。这个成员变量有setter和getter,但也有许多地方可以直接访问和清除它


Eclipse调试器是否有一种方法可以在该成员变量的值发生更改时通知我?

正如duffymo在评论中建议的那样,您可以添加一个监视表达式


例如,选择要跟踪的变量,然后单击鼠标右键。在菜单中,您将找到
监视
选项。

您可以在“(x)=变量”窗口(调试透视图)中的对象引用层次结构中导航。从这里,您还可以在给定的实例属性上添加“watch”。右Clic->切换观察点

程序应该在修改该实例的属性时中断


要获得“监视”功能,请执行以下操作:

如图所示

Eclipse IDE for Java Developers
Version: Oxygen Release Milestone 5 (4.7.0 M5)
Build id: 20170202-1353
为确保右clic上有“watch”选项,您可以执行以下操作:

  • 您需要在“调试”透视图中打开Eclipse(窗口->透视图->打开透视图->调试)

  • 然后需要在引用变量的a行上放置断点。或任何一行

  • 在调试中运行程序(“播放”图标旁边的小“错误”图标)

  • 一旦到达断点,您就可以右键clic任何变量并获得“watch”选项

  • 否则,您可以使用“表达式”窗口并设置您自己的变量进行监视

    从那里,您还可以在类上设置clic的右键,并显示其所有实例(right clic->all instances)

    查看“手表”。