java中的异常链
来源:互联网 发布:网络应急预案流程图 编辑:程序博客网 时间:2024/06/05 15:14
/**
* test1()抛出 “喝大了” 异常
* test2()调用test1(),捕获“喝大了” 异常,并且包装成运行时异常,继续抛出
* main方法中,调用test2(),尝试捕获test2()方法抛出异常
* @param args
*/
public static void main(String[] args) {
ChainTest ct = new ChainTest();
try {
ct.test2();
}catch(Exception e){
e.printStackTrace();
}
}
public void test1() throws DrunkException {
throw new DrunkException("喝酒别开车!!!");
}
public void test2() {
try {
test1();
} catch (DrunkException e) {
// TODO Auto-generated catch block
RuntimeException newExc = new RuntimeException("司机一滴酒 亲人两行泪");
newExc.initCause(e);
throw newExc;
}
}
结果:
java.lang.RuntimeException: 司机一滴酒 亲人两行泪
at com.test.ChainTest.test2(ChainTest.java:30)
at com.test.ChainTest.main(ChainTest.java:15)
Caused by: com.test.DrunkException: 喝酒别开车!!!
at com.test.ChainTest.test1(ChainTest.java:22)
at com.test.ChainTest.test2(ChainTest.java:27)
public class ChainTest {
/**
* test1()抛出 “喝大了” 异常
* test2()调用test1(),捕获“喝大了” 异常,并且包装成运行时异常,继续抛出
* main方法中,调用test2(),尝试捕获test2()方法抛出异常
* @param args
*/
public static void main(String[] args) {
ChainTest ct = new ChainTest();
try {
ct.test2();
}catch(Exception e){
e.printStackTrace();
}
}
public void test1() throws DrunkException {
throw new DrunkException("喝酒别开车!!!");
}
public void test2() {
try {
test1();
} catch (DrunkException e) {
// TODO Auto-generated catch block
RuntimeException newExc = new RuntimeException(e);
//newExc.initCause(e);
throw newExc;
}
}
}
}
- Java中的异常链
- java中的异常链
- Java中的异常链
- java中的异常链
- Java异常中的异常链机制
- 【java】java中的异常
- Java中的异常处理
- java中的的异常
- java中的异常
- JAVA中的异常处理
- Java中的异常处理
- Java中的异常分类
- JAVA中的异常处理
- Java中的自定义异常
- Java中的异常
- java中的异常处理
- Java中的所有异常
- java中的异常
- 64. Minimum Path Sum
- 学习vn.py(1) vn.py环境部署
- openstack+docker设计与实现CI/CD(持续集成/持续交付)
- 使用python对中文文本进行分词
- HTML 块标签,行内标签,行内块标签以及之间的相互转换
- java中的异常链
- mysql的二进制日志
- 字节/二进制
- Android应用闪屏页延迟跳转的三种写法
- 安装mongodb遇到的问题 ERROR: child process failed, exited with error number 100 总结
- RMI是什么
- corn表达式
- 产后同房没有感觉怎么办?该如何是好
- java中static的使用详解