能够标记 String.valueOf() 值将包含在任何堆栈跟踪中的对象是否有用。在下面的示例中,我使用了“trace”。未在堆栈跟踪点声明的变量将被忽略。 它将使调试变得更加容易,并且使编写易于调试的程序变得更加容易。
以下代码的堆栈跟踪示例:
java.lang.NullPointerException:
at Test.main(Test.java:7) index=0, sum=3, obj=null
public class Test {
Object obj;
public void main(String[] args) trace obj {
trace int sum = 0;
for(trace int index = 0; index < args.length; index++) {
sum += Integer.parseInt(args[index]);
sum += obj.hashCode();//Will cause NullPointerException
}
}
}
来自:http://jamesjava.blogspot.com/2005/04/extra-info-in-stack-traces.html
最佳答案
这可能很有用,但我认为它会使代码变得困惑 - 大概当代码运行时你会想要删除“trace”关键字;也许某种形式的元数据会更合适
然后总是有打印语句...
关于java - 向堆栈跟踪添加额外信息有用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/99285/