log.error("异常:", e);与log.error(e.getMessage());区别
Posted libin6505
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了log.error("异常:", e);与log.error(e.getMessage());区别相关的知识,希望对你有一定的参考价值。
转:
log.error("异常:", e);与log.error(e.getMessage());区别
昨天接到消息,要去海尔商城做一个CM系统,但是海尔那边还需做一下简单的面试,把把关。废话不多说,讨论问题:
不知道大家在正常的开发中,有没有细心留意过这个问题,看似很小,还是能体现一个人工作上的认真程度的。
反正我是没有做到这么仔细.......
大家也可以写代码试一试结果:
以空指针为例:
(1).log.error("异常:" + e);的打印结果为异常信息+堆栈信息:
异常:
(2).log.error("异常:" + e.getMessage());的打印结果为:只有异常信息
异常:null
而且,对于异常Exception的打印,是按照底层到高层的顺序来打印的。
国企的面试呢,大多数都是以基础知识+细节为主,所以准备国企的面试,要复习好基础知识。
从这个问题,就可以看出,我们,至少是我,在平时的工作中,只注意到了问题的表面,而没有深入到问题的深处,就是所有开发口中的“底层”,“底层”。我也偶尔会看看一些框架的源码,好在与他人交流的时候,也可以喊喊“底层”,“源码”,其实还是我理解错了,真正的什么什么语言的底层,什么什么框架的底层,不是说你看看源码,就说明你懂了,而是像这种,同样实现了List接口的ArrayList与LinkedList内部数据结构有什么区别啊,性能上有什么差异啊,我们平常调用的方法都是怎么实现的啊等等,至少,看源码应该会对你的代码规范,程序设计有一定的帮助,要么说“温故而知新”,“学而不思则罔”呢,这些总结都是有一定道理的。
以上是关于log.error("异常:", e);与log.error(e.getMessage());区别的主要内容,如果未能解决你的问题,请参考以下文章
log4j:ERROR A "org.apache.log4j.DailyRollingFileAppender" object is not assignable to a &q
log4j:ERROR A "org.jboss.logging.appender.FileAppender" object is not assignable to a &quo
java.net.SocketTimeoutException: Read timed out 异常排查