我在编程中发现,在表现层没有异常,但仍然会执行catch块......如下代码所示:
try
{
//正常的情况下,如果没有异常会直接重定向到 ok.aspx,不执行catch
response.redirect("ok.aspx");
}
catch()//但是在正确的情况下,却执行了catch并捕获到的异常信息为“正在终止线程”
{
}
郁闷了好半天。。。终于解决了。。。。改成如下代码就行:
try
{
response.write(<script>location.href('ok.aspx')</script>);
}
catch()
{
}
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/panyuanyuan/archive/2010/01/09/5163228.aspx
分享到:
相关推荐
如果没有找到匹配的`catch`块,异常会继续向上层调用栈传播,直到被处理或者导致程序终止。 `finally`块是异常处理中的另一个关键部分,它的主要任务是确保无论是否发生异常,某些代码都能够被执行。这通常包括资源...
总结来说,`try-catch`嵌套在Java中用于更精细化的异常处理,允许我们针对不同类型的异常执行不同的恢复策略。通过这种方式,我们可以编写更健壮、更易维护的代码,确保程序在面对错误时能够优雅地处理并继续运行。
如果在`try`块中的任何代码抛出了一个异常,控制权将立即转移到与之匹配的`catch`块。例如,考虑以下代码片段: ```java try { int[] array = new int[5]; System.out.println(array[10]); // 这将抛出...
当程序运行过程中遇到错误或异常情况时,如果没有妥善处理,可能会导致程序崩溃。Java、C#等许多编程语言提供了异常处理框架,其中“try-catch-finally”是常用的一种结构。下面我们将详细探讨这个主题。 1. **异常...
如果找到了匹配的类型,对应的`catch`块会被执行;如果没有找到,`...`通配符捕获器可以捕获所有未指定类型的异常。 在VC中,`catch`块通常用于捕获标准C++库中的异常,如`std::exception`及其派生类。不过,你也...
当代码执行到try语句块中时,如果出现了异常,Java虚拟机会将其捕获并抛出到catch子句中,在catch子句中可以进行异常处理和错误信息的返回。try catch语句可以捕获到各种类型的异常,包括运行时异常和检查异常。 而...
try块中的代码在执行时,如果出现异常,会被catch块捕获和处理。try块的语法结构如下: ```java try { // 可能出现异常的代码 } ``` 二、catch块 catch块是try-catch-finally语句的第二部分,用于捕获和处理try...
如果没有找到匹配的catch块,异常将向上层调用堆栈传递,直到找到合适的catch块或程序终止。 通常在catch块中,可以打印异常信息、记录日志、发送警报、返回默认值等方式来处理异常。取决于具体情况,你可以根据...
在这种情况下,程序会先执行 try 块,如果遇到异常,则执行 catch 块中的 return 语句,但不返回;然后执行 finally 语句中全部代码,最后执行 catch 块中的 return 语句。 情况 4:try{ return; }catch(){} ...
如果没有处理块,到最上层,如果是多线程就由 Thread.run()抛出,如果是单线程就被 main()抛出。抛出之后,如果是线程,这个线程就会退出,如果主程序抛出异常,那么这个程序就退出。 需要注意的是,运行时异常是 ...
2. **异常检测**:如果`try`块中的代码抛出异常,执行会立即停止,并查找匹配的`catch`块来处理异常。 3. **异常处理**:一旦找到匹配的`catch`块,控制流会转移到那里,执行异常处理代码。 4. **异常传播**:如果...
如果抛出的异常是catch块指定类型的实例或其子类,那么该catch块将处理异常。 6. **多catch块** 一个try块可以跟随多个catch块,这样就可以捕获不同类型的异常。例如: ```java try { // 可能抛出异常的代码 } ...
- 如果程序正常执行,没有异常发生,那么catch块中的代码不会被执行。 - 即使程序中发生了异常,catch块之后的代码仍然可以执行,只要这些代码不在try块内。 #### 10.3.4 多重catch语句块 - **多重catch语句**:...
当`try`块中的代码触发异常时,程序会立即跳转到相应的`catch`块,如果匹配成功,执行`catch`块内的代码,否则继续向上层的`catch`块查找,直到找到匹配的`catch`或者异常被未捕获处理。 1. **多条catch语句**:在...
3. **执行catch块**: - 如果try块中发生了异常,并且有与之匹配的catch块,则执行相应的catch块来处理异常。 - catch块可以有多个,按照顺序进行检查,找到第一个匹配的catch块执行。 4. **执行finally块**: - ...
### C++中的异常处理:使用try-catch块捕获与处理异常 #### 异常处理的概念 在C++中,异常处理是一种强大的机制,用于在程序执行过程中出现非预期情况时进行错误处理和恢复。异常处理的核心是`try-catch`结构。`try...
如果没有与异常类型匹配的 `catch` 块,则程序会继续向上抛出异常,直至被更高级别的异常处理器捕获或导致程序崩溃。 #### 二、`try-catch` 的语法结构 基本的 `try-catch` 语句结构如下: ```plaintext try { /...
// 如果try块中的代码正常执行完毕,则跳过catch块,继续执行后面的代码 } catch (ExceptionType e) { // 处理try块中抛出的异常 // ExceptionType是预期可能发生的异常类型 // 可以有多个catch块来捕获不同类型...
这使得你可以针对不同类型的异常执行不同的操作。例如: ```csharp try { // 可能抛出异常的代码 } catch (IOException ex) { // 处理IO相关的异常 } catch (FormatException ex) { // 处理格式化异常 } catch ...