繁体   English   中英

无法在Eclipse调试器中的静态方法中检查实例变量值

[英]Can't check instance variable values in static method in Eclipse debugger

我想跟踪实例变量的值,而断点从静态方法开始。 我无法检查实例变量值。 有没有办法做到这一点? 我在Google上进行了搜索,但没有发现任何线索。

是因为无法通过静态方法访问实例吗?

您可以将要跟踪的变量传递给方法。 尽管您每次执行操作时都只是做一个记录,所以可以在完成测试后将其删除。

但老实说,如果您不能从方法内部访问变量,那么除非您有多个线程,否则在退出方法时它可能不会更改。 因此,可以在调用该方法之后/之前设置断点。

静态方法无法访问实例变量的值,根据定义,该变量在创建对象实例之前是未定义的。

public class A {

  private int b;

  public static void foo() {
    b = 1;
  }
}

出于这个原因将无法编译。 围绕它进行工作以使b本身保持静态。 当然,您应该了解将b设为静态意味着什么。 这意味着无论给定JVM中存在多少个类的实例,b都只有一个实例。

暂无
暂无

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

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