标签 ‘ exception

在java 7中捕获多个异常

原文链接 作者:Jakob Jenkov 译者:fangqiang08(fangqiang08@gmail.com)

java 7使得我们能够在同一个catch语句块中捕获多种不同的异常,这也叫做多重异常捕获。

阅读全文

Java 7中的Try-with-resources

原文链接 作者:Jakob Jenkov 译者:fangqiang08(fangqiang08@gmail.com)
Try-with-resources是java7中一个新的异常处理机制,它能够很容易地关闭在try-catch语句块中使用的资源。
阅读全文

基本的try-cathc-finally异常处理

原文链接 作者:Jakob Jenkov 译者:fangqiang08(fangqiang08@gmail.com)

这一小节概述了try-catch-finally 语句是怎样处理错误的,文中的例子是Java的,但是同样的规则也适用于C#。java和C#中异常的唯一区别就是C#中没有已检查异常。已检查异常和未检查异常将在后面小节更加详细地介绍。

阅读全文

Fork/Join框架(五)在任务中抛出异常

声明:本文是《 Java 7 Concurrency Cookbook 》的第五章,作者: Javier Fernández González     译者:许巧辉 校对:方腾飞

在任务中抛出异常

在Java中有两种异常:

  • 已检查异常(Checked exceptions):这些异常必须在一个方法的throws从句中指定或在内部捕捉它们。比如:IOException或ClassNotFoundException。
  • 未检查异常(Unchecked exceptions):这些异常不必指定或捕捉。比如:NumberFormatException。

在ForkJoinTask类的compute()方法中,你不能抛出任何已检查异常,因为在这个方法的实现中,它没有包含任何抛出(异常)声明。你必须包含必要的代码来处理异常。但是,你可以抛出(或者它可以被任何方法或使用内部方法的对象抛出)一个未检查异常。ForkJoinTask和ForkJoinPool类的行为与你可能的期望不同。程序不会结束执行,并且你将不会在控制台看到任何关于异常的信息。它只是被吞没,好像它没抛出(异常)。你可以使用ForkJoinTask类的一些方法,得知一个任务是否抛出异常及其异常种类。在这个指南中,你将学习如何获取这些信息。 阅读全文

return top