Exception e getMessage()为null情况

有没有遇到过Exception e  getMessage()为null情况;如下,获取message为null。

  在Exception的父类Throwable中,有getMessage方法,该方法其实返回的就是detailMessage,从上图看出,detailMessage为null,那通过getMessage方法当然就取不到值了。

  当然从第一个图中已然发下,e1其实是InvocationTagetException类型,查看InvocationTargetException 的源码得知InvocationTargetException 并没有覆盖getMessage方法,所以消息当然是空的了。我们需要调用InvocationTargetException 的getTargetException方法得到要被包装的异常,这个异常才是真正我们需要的异常;可采用以下方法得到;

猜你喜欢

转载自blog.csdn.net/a1510841693/article/details/85855681