为什么报异常要打印的是堆栈信息
希望能得到大家最全的答案
------解决方案--------------------堆栈跟踪(stack trace)是一个方法调用过程的列表,发生异常的时候e.printStackTrace();是把产生该异常的一系列方法的调用过程打印出来(最后调用的方法最先打出来),按照方法的调用过程查找异常出现的原因会很方便。
------解决方案--------------------举个小例子,main()方法中按顺序调用了a()方法和b()方法,其中b()方法中又调用了c()方法,c()方法中产生了一个异常,打印后的结果类似
c():产生异常的行号
b():c方法调用的行号
main():b方法调用的行号
有了这个线索查找异常产生的原因是不是很轻松呢
------解决方案--------------------先顶一哈
------解决方案--------------------这是系统的默认行为,方便你跟踪
异常抛出的位置。你完全可以不必打印堆栈信息,而打印其他信息。
------解决方案--------------------2楼正解! 为了方便跟踪最先抛出异常的地方,又可以看到该程序的异常从哪些方法中层层抛出的