java异常相关说明(printStackTrace,fillInStackTrace等)

我们在实际场景中很容易catch(Exception e) 简单粗暴

这样写代码有几个问题

1.你无法细分具体异常 因为有时需要针对不同异常 产生不同的应对行为

 

2.直接exception 往往不会包含太多具体信息。

 

特别针对第二点 如果你要打印详细信息  还是有一些注意点。

printStackTrace 打印的是调用栈的轨迹 。调用栈显示了“把你带到异常的地点" 支持选择要输出的流。

它打印的是 方法调用的源头上下文

 

fillInStackTrace:用于在throwable内部记录栈针状态

有一种场景 比如  如调用h方法

 


fillInStackTrace 处理后

 

就能记录调用的栈信息

不然打印效果和截图的上面一样 只能打印产生异常的源头

 

posted @ 2019-08-08 19:36  陶朱公Boy  阅读(1627)  评论(0编辑  收藏  举报