try、catch和finally

try、catch和finally

ID:38265519

大小:33.16 KB

页数:5页

时间:2019-06-07

try、catch和finally_第1页
try、catch和finally_第2页
try、catch和finally_第3页
try、catch和finally_第4页
try、catch和finally_第5页
资源描述:

《try、catch和finally》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1、将预见可能引发异常的代码包含在try语句块中。2、如果发生了异常,则转入catch的执行。catch有几种写法:catch这将捕获任何发生的异常。catch(Exceptione)这将捕获任何发生的异常。另外,还提供e参数,你可以在处理异常时使用e参数来获得有关异常的信息。catch(Exception的派生类e)这将捕获派生类定义的异常,例如,我想捕获一个无效操作的异常,可以如下写:catch(InvalidOperationExceptione){....}这样,如果try语句块中抛出的异常是InvalidOperati

2、onException,将转入该处执行,其他异常不处理。catch可以有多个,也可以没有,每个catch可以处理一个特定的异常。.net按照你catch的顺序查找异常处理块,如果找到,则进行处理,如果找不到,则向上一层次抛出。如果没有上一层次,则向用户抛出,此时,如果你在调试,程序将中断运行,如果是部署的程序,将会中止。如果没有catch块,异常总是向上层(如果有)抛出,或者中断程序运行。3、finallyfinally可以没有,也可以只有一个。无论有没有发生异常,它总会在这个异常处理结构的最后运行。即使你在try块内用retu

3、rn返回了,在返回前,finally总是要执行,这以便让你有机会能够在异常处理最后做一些清理工作。如关闭数据库连接等等。注意:如果没有catch语句块,那么finally块就是必须的。如果你不希望在这里处理异常,而当异常发生时提交到上层处理,但在这个地方无论发生异常,都要必须要执行一些操作,就可以使用tryfinally.1.抛出E1.抛出Exception,没有finally,当catch遇上return 1 2public static boolean catchTest() { 3        try { 4      

4、      int i = 10 / 0;   // 抛出 Exception,后续处理被拒绝 5            System.out.println("i vaule is : " + i); 6            return true;    // Exception 已经抛出,没有获得被执行的机会 7        } catch (Exception e) { 8            System.out.println(" -- Exception --"); 9            return c

5、atchMethod();    // Exception 抛出,获得了调用方法并返回方法值的机会10        }11    }12后台输出结果:12 -- Exception --3call catchMethod and return  --->>  false42.抛出Exception,当catch体里有return,finally体的代码块将在catch执行return之前被执行 1 2public static boolean catchFinallyTest1() { 3        try { 4    

6、        int i = 10 / 0; // 抛出 Exception,后续处理被拒绝 5            System.out.println("i vaule is : " + i); 6            return true;   // Exception 已经抛出,没有获得被执行的机会 7        } catch (Exception e) { 8            System.out.println(" -- Exception --"); 9            return ca

7、tchMethod();  // Exception 抛出,获得了调用方法的机会,但方法值在 finally 执行完后才返回10        }finally{11            finallyMethod();  // Exception 抛出,finally代码块将在 catch 执行 return 之前被执行12        }13    }14后台输出结果:12 -- Exception --3call catchMethod and return  --->>  4call finallyMethod an

8、d do something  --->>  false53.不抛Exception,当finally代码块里面遇上return,finally执行完后将结束整个方法 1 2public static boolean catchFinallyTest2() { 

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。