zoukankan      html  css  js  c++  java
  • try...catch...finally

    基本结构

    try

    {

    }

    catch(<exceptionType> e)

    {

    }

    finally

    {

    }

    也可以只有try块和finally块,而没有catch块,或者有一个try块和好几个catch块。如果有一个或多个catch块,finally块就是可选的,否则就是必需的。

    代码的用法如下:

    try——包含抛出异常的代码

    catch——包含抛出异常时要执行的代码

    finally——包含总是执行的代码,如果没有产生异常,则在try块之后执行,如果处理了异常,就在catch块后执行,或者在未处理的异常上移动到调用堆栈之前执行。

    在try块的代码中出现异常后,发生的事件依次是:

    1、try块在发生异常的地方中断程序的执行

    2、如果有catch块,就检查该块是否匹配已抛出的异常类型。如果没有catch块,就执行finally块(如果没有catch块,就一定要有finally块)

    3、如果有catch块,但它与已发生的异常类型不匹配,就检查是否有其他catch块

    4、如果有catch块匹配已发生的异常类型,就执行它包含的代码,在执行finally块(如果有)

    5、如果catch块都不匹配已发生的异常类型,就执行finally块(如果有)

  • 相关阅读:
    树上路径
    [HNOI2017]礼物
    Spoj 8372 Triple Sums
    [Swerc2014 C]Golf Bot
    【bzoj2194】快速傅立叶之二 FFT
    Linux下perl模块安装
    angularjs form表单验证
    Angularjs兼容IE
    input file限制上传文件类型
    angularjs判断页面数据是否渲染完成
  • 原文地址:https://www.cnblogs.com/ahao214/p/2688851.html
Copyright © 2011-2022 走看看