java - 向堆栈跟踪添加额外信息有用吗?

标签 java language-agnostic

能够标记 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/

相关文章:

language-agnostic - 如何计算球体上一点到线段的距离?

language-agnostic - 将函数式语言概念与 OO 结合使用 - 有语言吗?

java - 构建和注入(inject)客户端

java - 将java对象列表转换为CSV

java - 我有三个开关按钮,如果一个开关按钮处于 Activity 状态,那么其他两个开关按钮应保持不活动或禁用

java - Log4j2 SMTPAppender 不发送电子邮件

language-agnostic - "Reverse"统计信息 : generating data based on mean and standard deviation

java - 将 GAE 实体缓存到 Memcache

java - 为什么我的 bufferedReader 从文本文件中读取 `java.lang.String;@70177ecd` ?

xml - 使用 XML 数据结构还是可以转换为 XML 的自定义数据结构更好?