知识大全 初探Java 7异常处理功能增强
Posted 类型
篇首语:在学习上做一眼勤、手勤、脑勤,就可以成为有学问的人。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 初探Java 7异常处理功能增强相关的知识,希望对你有一定的参考价值。
初探Java 7异常处理功能增强 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
今天我们来看看Java 异常处理方面的功能增强 来自Coin项目的又一个细微语言增强已经被包含在Java 中 由谷歌专任工程师兼Java讲师Neal Gafter提出的Java增强异常处理功能 Open JDK开发的领导者Joe Darcy已经在其博客上宣布了这个变化
此次变动增加了两处对异常处理机制的细微增强
◆Multicatch 开发者现在能够在一个catch代码块中捕获多个异常类型
◆Final Rethrow 它可以让开发者捕获一个异常类型及其子类型 并且无需向方法声明中增加抛出子句 就能重新将其抛出
过去我们在捕获多个异常类型时 往往会使用以下类型的代码
catch (FirstException ex)
logger error(ex);
throw ex;
catch (SecondException ex)
logger error(ex);
throw ex;
但是以上代码除了冗长外没有什么优点 一个解决办法是找出这两个异常类型的共同子类型 只对其进行捕获并抛出 但是这种方法通常会捕获一些你并不需要的异常
现在借助于新增的功能 开发者可以使用以下代码
catch (FirstException | SecondException ex)
logger error(ex);
throw ex;
这种代码看上去要简洁清晰的多
第二个增强功能要复杂一些 假如开发者希望捕获所有异常 在进行必要的几个操作后 再将其抛出 就代码编写而言并不是一件难事 但是开发者必须在方法声明中增加一个抛出子句 来管理自己代码发出的新异常 而现在借助于Final Rethrow 开发者无需增加一个异常抛出子句就能完成此项任务
try
// some code
catch (final Throwable ex)
// some more code
throw ex;
通过使用final关键字 开发者可以抛出所需的准确动态类型异常 这样如果一个IOException异常发生 那么IOException将被抛出 当然 开发者必须声明不被捕获的异常 如果开发者在try代码块(在//some more code部分)中没有捕获任何异常 抛出子句则与以前完全相同 反之如果捕获到某些异常 开发者则可以进行相应处理
Java 中的multi catch是一个非常好的功能 但是final rethrow对程序员来说并不常用
cha138/Article/program/Java/hx/201311/26609相关参考
Java异常处理 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 异常处理是程序设计中一个非常重要
关键字:异常通告(throws)throwtrycatchRuntimeException不可检查(Unchecked)异常可检查(Checked)异常 Java编程中的异常处理是一个很常见的话题
对于java异常处理你是否都掌握了呢如果是你是否能在下面这段代码中迅速找出异常处理的六个问题吗? &nbs
JavaSocket常见异常处理 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在java网络编
Java异常处理原理及应用 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! readLine方法有
在编程中我们肯定会意见代码异常的情况当发生异常时程序员可以通过自己编写有针对性的代码来对它进行处理以让程序继续运行下去为了让写出来的代码比较强壮(robust)ja
Java中的异常处理从概念到实例 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 概念 采用新的
在java多线程程序中所有线程都不允许抛出未捕获的checkedexception也就是说各个线程需要自己把自己的checkedexception处理掉这一点是通过javalangRunnable
在Java程序设计中处理DOM异常 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在使用基于Ja
.异常(Exceptions) JAVA语言中提供了try/catch来发方便用户捕捉异常进行异常的处理但是如果使用不当也会给JAVA程序的性能带来影响因此要注意以下两点 ()避免对应用程序的