乱读天书, 不求甚解
周祎骏的个人云笔记
Toggle navigation
乱读天书, 不求甚解
主页
Linux:系统配置
Linux:用户管理
Linux:优化排错
Linux:进程调度
Linux:文件系统
Linux:网络
Linux:系统服务
Linux:安全
Linux:内核
容器:Docker
容器:containerd
容器编排:Kubernetes
IAC:Terraform
大数据:Hadoop
大数据:Zookeeper
大数据:Hbase
消息队列:rsyslog
消息队列:kafka
数据库:MySQL
数据库:MongoDB
搜索引擎:Elasticsearch
时序数据库:OpenTSDB
网站服务:Nginx
编程:Bash
编程:Perl
编程:Python
编程:C
编程:JAVA
编程:Rust
版本控制:gitlab
知识管理:docusaurus
常用小工具
关于我
标签
JAVA 5.10 异常的操作
2018-08-12 15:11:39
51
0
0
admin
> 获取异常信息,操作异常 #一些获得异常信息的方法 ``` import java.util.*; public class test{ public static void main(String[] args){ try { f2(); } catch (Exception e){ System.out.println("main =================="); e.printStackTrace(System.out); } } static void f1() throws Exception { try { throw new Exception("myError"); } catch (Exception e) { System.out.println("f1 =================="); System.out.println("getMessage:\n"+e.getMessage()); //打印异常内容 System.out.println("getLocalizedMessage:\n"+e.getLocalizedMessage());//用本地语言打印异常内容 System.out.println("toString:\n"+e); e.printStackTrace(System.out); //获得栈轨迹 //throw e; 这样会把这个异常原封不动抛出去,栈轨迹在之后不再跟新 throw (Exception)e.fillInStackTrace(); //用当前的栈轨迹信息填充异常,栈轨迹之后会继续更新,但是会丢失之前的栈轨迹 } } static void f2() throws Exception { try { f1(); } catch (Exception e){ System.out.println("f2 =================="); e.printStackTrace(System.out); //throw new Exception(e); //Exception和Error和RuntimeException 可以用构造器直接生成保留之前的栈轨迹的新异常 Exception the_e = new Exception(); the_e.initCause(e); //其它异常对象用这种方式生成保留之前的栈轨迹的新异常 throw the_e; } } } ```
上一篇:
JAVA 5.00 异常
下一篇:
JAVA 5.20 自定义异常
文档导航