Java获取e.printStackTrace()打印的信息方式


Posted in Java/Android onAugust 07, 2021

获取e.printStackTrace()打印的信息

某些情况下,我们需要获取应用打印的异常信息,这时就可以借助StringWriter和PrintWriter两个类来获取异常信息

具体用法如下:

try{
            throw new NullPointerException();
        }catch (Exception e){
            StringWriter sw = new StringWriter();
            e.printStackTrace(new PrintWriter(sw,true));
            String infomsg = sw.toString();
            System.out.println(infomsg);
        }

e和e.printStackTrace()方法

e初始化,也就是实例化Exception类型的对象,e是此对象引用名称。然后e(引用)会自动调用Exception类中指定的方法,也就出现了e.printStackTrace()。

当然,我们也可以用System语句输出,那么这两个语句有什么区别呢?

1、两个输出语句都能输出

System语句可以提示你异常发生的位置;但e.printStackTrace()可以显示更深的调用关系。

例如:程序中有继承的关系

Rose extends Flower ; Flower extends Plant;假如我们在创建 Rose

的时候发生异常,那么System语句就会输出异常 at Rose ,然后向外层输出

但e.printStackTrace()输出除了标准异常外,打印 at Plant at Flower at Rose

…….再向外层调查。 在向外层调查的情况下,都一样

2、System.out.println();

当发生异常时显示你自己设定的字符串信息;e.printStackTrace();是打印异常的堆栈信息,指明错误原因。

note:其实当发生异常时,通常要处理异常,这是编程的好习惯,所以e.printStackTrace()可以方便你调试程序!

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Java/Android 相关文章推荐
Jackson 反序列化时实现大小写不敏感设置
Jun 29 Java/Android
Java使用httpRequest+Jsoup爬取红蓝球号码
Jul 02 Java/Android
看完这篇文章获得一些java if优化技巧
Jul 15 Java/Android
java设计模式--原型模式详解
Jul 21 Java/Android
详解JAVA的控制语句
Nov 11 Java/Android
Java生成日期时间存入Mysql数据库的实现方法
Mar 03 Java/Android
Java基于Dijkstra算法实现校园导游程序
Mar 17 Java/Android
关于Mybatis中SQL节点的深入解析
Mar 19 Java/Android
SpringBoot2零基础到精通之数据与页面响应
Mar 22 Java/Android
Java中Quartz高可用定时任务快速入门
Apr 03 Java/Android
Java 关于String字符串原理上的问题
Apr 07 Java/Android
Java Spring Boot请求方式与请求映射过程分析
Jun 25 Java/Android
Java移除无效括号的方法实现
Aug 07 #Java/Android
简述Java中throw-throws异常抛出
Aug 07 #Java/Android
Java比较两个对象中全部属性值是否相等的方法
Aug 07 #Java/Android
Java org.w3c.dom.Document 类方法引用报错
Aug 07 #Java/Android
springboot+WebMagic+MyBatis爬虫框架的使用
Aug 07 #Java/Android
mybatis中注解与xml配置的对应关系和对比分析
Aug 04 #Java/Android
浅谈sql_@SelectProvider及使用注意说明
Aug 04 #Java/Android
You might like
浅析echo(),print(),print_r(),return之间的区别
2013/11/27 PHP
我整理的PHP 7.0主要新特性
2016/01/07 PHP
浅谈PHP值mysql操作类
2016/06/29 PHP
php中10个不同等级压缩优化图片操作示例
2016/11/14 PHP
php实现姓名根据首字母排序的类与方法(实例代码)
2018/05/16 PHP
PHP实现的mysql读写分离操作示例
2018/05/22 PHP
javascript 冒号 使用说明
2009/06/06 Javascript
在javascript中关于节点内容加强
2013/04/11 Javascript
js中Math之random,round,ceil,floor的用法总结
2013/12/26 Javascript
node.js中的fs.lchownSync方法使用说明
2014/12/16 Javascript
JavaScript代码实现左右上下自动晃动自动移动
2016/04/08 Javascript
JavaScript轻松创建级联函数的方法示例
2017/02/10 Javascript
Angular.js通过自定义指令directive实现滑块滑动效果
2017/10/13 Javascript
es6在react中的应用代码解析
2017/11/08 Javascript
原生JS实现的简单小钟表功能示例
2018/08/30 Javascript
使用vue中的混入mixin优化表单验证插件问题
2019/07/02 Javascript
关于引入vue.js 文件的知识点总结
2020/01/28 Javascript
Vue使用vue-draggable 插件在不同列表之间拖拽功能
2020/03/12 Javascript
python实现从web抓取文档的方法
2014/09/26 Python
举例区分Python中的浅复制与深复制
2015/07/02 Python
Python中动态创建类实例的方法
2017/03/24 Python
linux环境中没有网络怎么下载python
2019/07/07 Python
python pip源配置,pip配置文件存放位置的方法
2019/07/12 Python
用Python绘制漫步图实例讲解
2020/02/26 Python
Django User 模块之 AbstractUser 扩展详解
2020/03/11 Python
python中format函数如何使用
2020/06/22 Python
Python模拟登录requests.Session应用详解
2020/11/17 Python
HTML5移动端手机网站开发流程
2016/04/25 HTML / CSS
成龙霸王洗发水广告词
2014/03/14 职场文书
纠风工作实施方案
2014/03/15 职场文书
工伤事故赔偿协议书
2014/04/15 职场文书
2014最新党员批评与自我批评材料
2014/09/24 职场文书
2014年学生会主席工作总结
2014/11/07 职场文书
2016春节放假通知范文
2015/08/18 职场文书
详解thinkphp的Auth类认证
2021/05/28 PHP
python flask开发的简单基金查询工具
2021/06/02 Python