文档章节

异常的区别

古月哥欠
 古月哥欠
发布于 2015/12/10 01:07
字数 313
阅读 3
收藏 0
点赞 0
评论 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

Java面试题之Java 的异常处理

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

年轻诠释我们的梦想_705b ⋅ 05/16 ⋅ 0

8张图理解Java

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

Panda_Jerry ⋅ 2017/10/31 ⋅ 0

JAVA异常处理原则和log4j输出详细异常分析

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

科肥 ⋅ 2015/04/01 ⋅ 1

hibernate 的事务传播中两种类型的区别

hibernate 的事务传播中两种常用类型(其实不止两种)的区别 最常用的两种就是 REQUIRED(0) REQUIRES_NEW(3), 两者的区别: REQUIRED(0):若当前存在一个事务,则加入该事务,而不用创建; REQUIRE...

黄威 ⋅ 前天 ⋅ 0

java经典面试笔试题(扫盲贴)

1、什么是对象序列化,为什么要使用? 所谓对象序列化,就是把一个对象以二级制的方式保存到硬盘上,方便远程调用。 2、值传递与引用传递的区别? 值传递就是把一个对象的值传给一个新的变量...

Carbenson ⋅ 2015/09/21 ⋅ 0

java基础(一)

阅读目录 1 throws与throw的区别 2 collection接口与map接口 3 list与set的区别 4 list都有哪些实现 5 如何创建线程对象 6 什么是泛型,作用? 7 自动装箱?拆箱? 1 throws与throw的区别 解...

为梦而来 ⋅ 2015/12/09 ⋅ 0

checked exception 和 unchecked exception的区别浅见

java 中的异常有一种区别方式:checked exception和unchecked exception; unchecked exception继承自RuntimeException; checked exception继承自Exception; 我认为这两者的区别在于,unc...

豆腐干123 ⋅ 2014/06/25 ⋅ 0

C#简单的面试题目(二)

16.new 的两种用法 实例化对象 new Class(); 隐藏基类方法,即覆盖方法 public new xxx(){} 17.委托与事件的用法 public delegate void handles(); ////定义委托,返回值为void,没有参数 pu...

aehyok ⋅ 2013/03/31 ⋅ 0

8张图理解Java

一图胜千言,下面图解均来自Program Creek 网站的Java教程,目前它们拥有最多的票选。如果图解没有阐明问题,那么你可以借助它的标题来一窥究竟。 1、字符串不变性 下面这张图展示了这段代码...

LCZ777 ⋅ 2014/06/12 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Jenkins实践3 之脚本

#!/bin/sh# export PROJ_PATH=项目路径# export TOMCAT_PATH=tomcat路径killTomcat(){pid=`ps -ef | grep tomcat | grep java|awk '{print $2}'`echo "tom...

晨猫 ⋅ 今天 ⋅ 0

Spring Bean的生命周期

前言 Spring Bean 的生命周期在整个 Spring 中占有很重要的位置,掌握这些可以加深对 Spring 的理解。 首先看下生命周期图: 再谈生命周期之前有一点需要先明确: Spring 只帮我们管理单例模...

素雷 ⋅ 今天 ⋅ 0

zblog2.3版本的asp系统是否可以超越卢松松博客的流量[图]

最近访问zblog官网,发现zlbog-asp2.3版本已经进入测试阶段了,虽然正式版还没有发布,想必也不久了。那么作为aps纵横江湖十多年的今天,blog2.2版本应该已经成熟了,为什么还要发布这个2.3...

原创小博客 ⋅ 今天 ⋅ 0

聊聊spring cloud的HystrixCircuitBreakerConfiguration

序 本文主要研究一下spring cloud的HystrixCircuitBreakerConfiguration HystrixCircuitBreakerConfiguration spring-cloud-netflix-core-2.0.0.RELEASE-sources.jar!/org/springframework/......

go4it ⋅ 今天 ⋅ 0

二分查找

二分查找,也称折半查找、二分搜索,是一种在有序数组中查找某一特定元素的搜索算法。搜素过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜素过程结束;如果某一特定元素大于...

人觉非常君 ⋅ 今天 ⋅ 0

VS中使用X64汇编

需要注意的是,在X86项目中,可以使用__asm{}来嵌入汇编代码,但是在X64项目中,再也不能使用__asm{}来编写嵌入式汇编程序了,必须使用专门的.asm汇编文件来编写相应的汇编代码,然后在其它地...

simpower ⋅ 今天 ⋅ 0

ThreadPoolExecutor

ThreadPoolExecutor public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, ......

4rnold ⋅ 昨天 ⋅ 0

Java正无穷大、负无穷大以及NaN

问题来源:用Java代码写了一个计算公式,包含除法和对数和取反,在页面上出现了-infinity,不知道这是什么问题,网上找答案才明白意思是负的无穷大。 思考:为什么会出现这种情况呢?这是哪里...

young_chen ⋅ 昨天 ⋅ 0

前台对中文编码,后台解码

前台:encodeURI(sbzt) 后台:String param = URLDecoder.decode(sbzt,"UTF-8");

west_coast ⋅ 昨天 ⋅ 0

实验楼—MySQL基础课程-挑战3实验报告

按照文档要求创建数据库 sudo sercice mysql startwget http://labfile.oss.aliyuncs.com/courses/9/createdb2.sqlvim /home/shiyanlou/createdb2.sql#查看下数据库代码 代码创建了grade......

zhangjin7 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部