`

在catch中使用throw,finally中的语句是否会执行?

 
阅读更多

public class Exceptiontest
{
   public static void main(String[] args) throws Exception
   {
    try{
     System.out.println("zai try中");
    }catch(Exception e){
     System.out.println("zai catch中");
     throw new Exception("在catch中的throw");
    }finally{
     System.out.println("zai finally");
    }
   }
}

执行结果是:

zai try中
zai finally

说明:尽管在catch中使用throw,程序依然会执行finally中的语句

分享到:
评论

相关推荐

    使用try-catch-finally处理异常

    即使在`try`或`catch`块中有return语句,`finally`块的代码也会被执行。 5. **多层嵌套** 你还可以在`try-catch-finally`结构内部嵌套另一个`try-catch-finally`结构,以处理更复杂的情况。这种方式使得异常处理...

    try-finally-throw-in-finally.rar_Called

    当在`finally`块中使用`throw`语句时,它会立即中断`finally`块的执行,并将控制权交回给最近的`catch`块,如果没有`catch`块,则程序会终止。 在描述中提到的"The Date Constructor Called as a Function"是指`...

    try-catch-finally-return-in-finally.rar_return

    `finally` 块总是会被执行,即使在 `try` 或 `catch` 中已经有一个 `return` 语句,这使得我们可以确保无论发生什么情况,都能执行必要的清理工作并返回一致的结果。 通过分析 `12.5-1.js` 和 `try-catch-finally-...

    JavaScript语句错误throw、try及catch实例解析

    finally 语句在 try 和 catch 语句之后,无论是否有触发异常,该语句都会执行。 JavaScript 抛出(throw)错误 当错误发生时,当事情出问题时,JavaScript 引擎通常会停止,并生成一个错误消息。 描述这种情况的技术...

    C# throw詳解

    `throw`语句常常与`try`、`catch`和`finally`等关键字一起使用,来实现对异常的有效管理和处理。 #### 二、throw语句的基本用法 `throw`语句的基本语法如下: ```csharp throw new Exception("异常消息"); ``` ...

    Java的throw和return

    1. **异常抛出前执行**:如果在`try`块或`catch`块中抛出了异常,并且这个异常没有被捕获或者被重新抛出,那么在抛出异常之前,系统会先执行`finally`块中的代码。这意味着即使程序因为异常而提前终止,`finally`块...

    使用异常处理语句需要注意的几个问题

    1. **不要单独使用 try、catch 或 finally 语句块**:在Java中,`try`语句块用于包含可能抛出异常的代码,`catch`用于捕获并处理特定类型的异常,而`finally`则用于定义无论是否发生异常都要执行的清理代码。...

    C# 中的try catch finall 的使用方法

    在C#编程中,异常处理是程序健壮性的重要组成部分,`try-catch-finally`语句块就是C#提供的一种处理运行时错误的方式。它允许程序员在代码可能抛出异常的地方进行捕获并处理,确保即使在异常情况下,程序也能以一种...

    Java异常处理之try...catch...finally详解

    1. 处理过程:代码在执行的时候,进入try块,若是在try块中出现了异常,系统会自动生成一个一场对象,该对象被提交给java运行时环境,这就是异常的抛出;在java运行时环境收到异常对象时则把该对象交给catch块处理,...

    使用Sqlcommand执行SQL语句

    在执行SQL命令时,可能会遇到各种错误,如网络问题、语法错误或权限问题。使用`SqlCommand`的`ExecuteNonQuery`、`ExecuteReader`或`ExecuteScalar`方法时,这些方法会抛出异常。通过捕获和处理这些异常,可以确保...

    C#中实现一次执行多条带GO的sql语句实例

    如果在执行过程中发生异常,我们会调用`tx.Rollback()`来撤销所有更改;如果一切顺利,我们则调用`tx.Commit()`提交事务。 这两个方法的主要区别在于是否使用事务。在某些情况下,比如当你需要确保一组数据库操作的...

    Try…Catch使用小结

    例如,在示例中,即使在打开数据库连接时出现异常,Finally 块也会确保在程序退出前关闭连接。另外,使用 `using` 语句也是处理资源释放的好方法,因为它会在块结束时自动调用 Dispose 方法。 3. **统一出口**:在...

    java异常处理例题代码文.pdf

    在finally块中,我们将执行finally语句,无论是否出现异常都会执行。 App9_3.java:使用throw语句在方法中抛出异常 在App9_3.java中,我们使用throw语句在方法中抛出异常。当b等于0时,我们将抛出Arithmetic...

    Java学习笔记

    当一个方法中有一条语句出现了异常,它就会throw(抛出)一个异常对象(throw 异常对象),然后后面的语句不会执行,而返回上一级方法,其上一级方法接受到了异常对象之后,有可能对这个异常进行处理(进行处理则...

    throws与throw的区别

    throw语句通常与try-catch-finally语句配套使用,要么与throws配套使用。 throw的主要作用是明确地抛出一个异常,告訴调用者该方法已经抛出了一个异常。例如,`if (a != b) throw new Exception3("自定义异常");`,...

    js实践篇:例外处理Try{}catch(e){} 1

    在这个例子中,如果用户输入非数字的值,会触发TypeError,catch块会捕获这个异常并显示相关信息,finally块则始终会执行。 四、try...catch...finally的变形 1. try...catch:只有try和catch两部分,没有finally...

    try-catch的用法和含义

    - **异常重抛**:在某些情况下,可以在 `catch` 块内部使用 `throw` 语句将异常重新抛出。例如: ```csharp catch (InvalidCastException e) { throw e; } ``` 这样做可以将当前异常传递给上一层的异常处理器...

    java try…catch捕获异常的实例

    即使在`try`或`catch`块中有`return`语句,`finally`块中的代码也会被执行: ```java try { // 代码 } catch (ExceptionType1 e1) { // 处理 } catch (ExceptionType2 e2) { // 处理 } finally { // 清理资源,...

    JavaScript中的异常捕捉介绍

    JavaScript中的异常处理机制是通过`try...catch...finally`语句来实现的,它允许开发者在代码中捕获并处理可能出现的错误。这个机制与Java类似,但有一些关键的差异。 首先,`throw`语句在JavaScript中可以抛出任何...

    java throw抛出异常实例二

    当`throw`语句执行后,控制流会立即跳转到与该异常匹配的最近的`catch`块。在上述示例中,我们捕获了`IllegalArgumentException`并打印出异常消息。`e.printStackTrace()`方法用于打印异常发生时的堆栈跟踪,这对于...

Global site tag (gtag.js) - Google Analytics