我有一个方法,想在不调试的情况下检查其中的变量 - 在 Java 中可以吗?
我不想编写大量代码,例如:
System.out.println("a: " + a);
我想要类似的东西:
System.out.printLocals();
拥有类似的东西也应该很棒:
System.out.printMembersOf(someObjectInstance);
我有一个方法,想在不调试的情况下检查其中的变量 - 在 Java 中可以吗?
我不想编写大量代码,例如:
System.out.println("a: " + a);
我想要类似的东西:
System.out.printLocals();
拥有类似的东西也应该很棒:
System.out.printMembersOf(someObjectInstance);
我想要类似的东西:
System.out.printLocals();
拥有类似的东西也应该很棒:
System.out.printMembersOf(someObjectInstance);
几乎每个 Java 类都有一个toString
方法。您覆盖该方法,您可以获得一个代表您所要求的字符串。
Eclipse Helios 以及其他 IDE 将为toString
您生成一个基本方法。
好吧,您可以编写一个带有 varargs 参数的方法,然后只写:
dump(variable1, variable2, variable3, variable4, ...);
这并不理想,但在某些情况下就足够了。没有办法自动从方法中获取所有局部变量并转储它们。
您可能会考虑某种可以做到的字节码操作(例如使用BCEL)......但它会非常难看。
您可以使用System.out.println
打印出变量。例子:
int i = 42;
System.out.println("i:" + i);
“审查”是什么意思?尝试 System.out.println(yourvariable) 或 (yourvariable.toString()) 如果它是一个对象。它将显示在控制台中。