关于控制台或者日志输出堆栈信息的输出和e.getMessage()输出不了空值针的异常报错的问题

关于控制台或者日志输出堆栈信息的输出和e.getMessage()输出不了空值针的异常报错的问题_第1张图片

关于控制台或者日志输出堆栈信息的输出和e.getMessage()输出不了空值针的异常报错的问题_第2张图片

可以看到异常里面,如果是空值针,

e.getMessage()不能输出任何信息,所以不建议使用,可以输出e对象,但是这样还是没有堆栈信息,如果要输出堆栈信息,需要输入将异常信息输入到字符串流,最后输出
final StringWriter sw = new StringWriter();
final PrintWriter pw = new PrintWriter(sw, true);
e.printStackTrace(pw);

你可能感兴趣的:(java技术,java)