文档章节

异常的区别

古月哥欠
 古月哥欠
发布于 2015/12/10 01:07
字数 313
阅读 3
收藏 0
e.printStackTrace( )是打印异常栈信息,而throw new RuntimeException(e)是把异常包在一个运行时异常中抛出。

我们常看见这种写法
try{
....

}catch(Exception e){
e.printStackTrace( );
throw new RuntimeException(e);

}
这是处理没法进一步处理的异常的一般做法。try块中出现了一个异常,它被catch住了,我们首先要在标准输出上打印出异常但是如果没有throw这句,这个错误就静悄悄地被catch块吃掉了,程序会继续运行。可这个时候很可能你的程序的状态已经不对了,继续下去也没有什么意义,所以应该继续抛出这个异常。你当然可以写throw e;,但是这个e是一般的异常,如果这样抛出的话,你得在这个函数头上用throws来声明,比如:
public void abc() throws Exception
然后调用这个函数的函数也还得这么干,所以一般的处理是把e包装成运行时异常:new  RuntimeException(e),这样就不需要在函数头声明了。

但这只是一般的处理方法,在实际程序中不可不顾实际情况和需求生搬硬套。


© 著作权归作者所有

共有 人打赏支持
古月哥欠
粉丝 0
博文 4
码字总数 4848
作品 0
海淀
异常相关概念

[x] Error 和 Exception有什么区别 [x] 什么是受检查的异常,什么是运行时异常 运行时异常与一般异常有何异同 [ ] 什么是异常链 [x] throw 和 throws 有什么区别? [ ] 简述一个你最常见到的...

AmorFatiYJ
2017/12/22
0
0
Java面试题之Java 的异常处理

1. Java中异常分为哪些种类 (1) 编译时异常,也叫强制性异常,和CheckedException (2)运行时异常,也叫没强制性异常和RuntimeException 2.error和exception的区别? error一般是指在虚拟...

年轻诠释我们的梦想_705b
05/16
0
0
JAVA异常处理原则和log4j输出详细异常分析

1.多用try,catch;不要一个try,catch包含所有内容 好处:不同模块抓取不同异常,某一模块异常挂了,不影响其他模块的程序的进行 2.多写几个catche;尽量不要使用Exception这个大异常去包容所有...

科肥
2015/04/01
0
1
8张图理解Java

理解Java 1.字符串不变性 2.equals()方法、hashCode()方法的区别 HashCode被设计用来提高性能。equals()方法与hashCode()方法的区别在于: 3.Java异常类的层次结构 图中红色部分为受检查异常...

Panda_Jerry
2017/10/31
0
0
第33节:Java面向对象中的异常

Java中的异常和错误 Java中的异常机制,更好地提升程序的健壮性 throwable为顶级,Error和Exception Error:虚拟机错误,内存溢出,线程死锁 Exception:RuntimeException为空指针异常,数组...

达叔小生
08/27
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Thinkphp5 优雅配置两个数据库

工作需要需要配置两个数据库,框架5.0的,步骤如下: 1、在database.php同级创建一个database2.php文件 在里面配置第二个数据库信息, 2、在config中配置这个数据库信息: 3、创建第二个表的...

wqzbxh
10分钟前
1
0
Socket网络编程进阶与实战

Socket网络编程进阶与实战 Socket对于每个工程师的重要性不言而喻。本课程将理论结合实践,带你从零开始,系统学习Socket编程技术,让Socket的学习不再那么零散与难以掌握,同时会提炼出Soc...

qq__2304636824
15分钟前
1
0
Android studio常用快捷键

Ctrl +Alt +Space //显示可用参数 Ctrl + Alt +M //抽取方法 Ctrl +Alt + F //提取全局变量 Ctrl +Shift + "+或-" //折叠/展开代码块 Shift + F6 //批量更改变量 Ctrl + Tab //切换器 Ctrl +...

lanyu96
28分钟前
1
0
@ControllerAdvice 拦截异常并统一处理

在spring 3.2中,新增了@ControllerAdvice 注解,可以用于定义@ExceptionHandler、@InitBinder、@ModelAttribute,并应用到所有@RequestMapping中。 一、介绍 创建 MyControllerAdvice,并添...

狼王黄师傅
31分钟前
1
0
ajax传递参数给springmvc总结[转]

https://www.cnblogs.com/franson-2016/p/6770028.html https://www.cnblogs.com/xiaoxi/p/5708084.html 总结: 1.springmvc与Ajax交互,可以传入三种类型的数据: (1)文本:"uname=alice&......

废柴
33分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部