异常处理:

  • 允许用户及时保存结果
  • 抓住异常,分析异常内容
  • 控制程序返回到安全状态

try-catch-finally机制进行方法内的异常捕捉处理

  • 异常结构
    -try...catch(catch可以有多个,下同)
    -try...catch...finally
    -try...finally
    try必须有,catch和finally至少要有一个。

try:正常业务逻辑代码
catch:当try发生异常,将执行catch代码。若无异常,绕之。
finally:当try或catch执行结束后,必须要执行finally。

  • catch块可以有多个,每个有不同的入口形参。当已发生的异常和某一个catch块中的形参类型一致,那么将执行该catch块中的代码。如果没有一个匹配,catch也不会被触发。最后都进入finally块。

  • 进入catch块后,并不会返回到try发生异常的位置,也不会执行后续的catch块,一个异常只能进入一个catch块。

  • catch块的异常匹配是从上而下进行匹配的。所以一般是将小的异常写在前面,而一些大(宽泛)的异常则写在末尾。

  • try结构中,如果有finally块,finally肯定会被执行。

  • try-catch-finally每个模块里也会发生异常,所以也可以在内部继续写一个完整的try结构。

try{try-catch-finally结构}catch(){try-catch-finally结构}finally{try-catch-finally结构}

try-catch-finally机制相关推荐

  1. try catch finally机制分析

    本文字数:13355字 预计阅读时间:34分钟 一.  静态代码检测问题提示 最近项目代码静态检测,报出大量类似的错误提示: 相应代码的错误说明如下(会导致异常被 finally 的 return 覆 ...

  2. Golang 错误处理机制详解

    本文介绍Golang错误处理机制,包括不同类型错误处理.定义运行时错误等内容. golang错误处理机制 Go错误处理类似C语言,没有提供任何异常,以及类java语言使用的try/catch异常处理机 ...

  3. 微信小程序全栈开发实践 第三章 微信小程序开发常用的API介绍及使用 -- 3.6 网络接口简介(六)关于Page页面隐藏代码执行及Promise对象catch处理的补充

    零.回顾 在上节课我们主要是基于 Promise 加 await.async关键字改写了登录模块代码, 但是我们在自动登录这一块的代码仍然有问题,这节课我们看一下, 如何在接口调用中实现微信用户的自动 ...

  4. 【Java基础知识】 异常处理机制

    "欲渡黄河冰塞川,将登太行雪满山." 系统运行,风云不测,睹始知终,秋去冬来,一叶落而知秋. 1. 什么是异常? 所有使我们程序提前终止,或者没有向预想方向去执行的错误统称为异常. ...

  5. 用S60操作系统SDK开发NOKIA手机应用程序(4)- 界面层框架及一些特性

    Uikon和Avkon Series 60 将一个用户界面层(Avkon)添加在Symbian OS v7.0s 底层的Uikon 之上. Uikon是Symbian 核心用户界面,Avkon是S60 ...

  6. 七天学会NodeJS

    2019独角兽企业重金招聘Python工程师标准>>> NodeJS基础 什么是NodeJS JS是脚本语言,脚本语言都需要一个解析器才能运行.对于写在HTML页面里的JS,浏览器充 ...

  7. nodejs学习资料

    2019独角兽企业重金招聘Python工程师标准>>> NodeJS基础 什么是NodeJS JS是脚本语言,脚本语言都需要一个解析器才能运行.对于写在HTML页面里的JS,浏览器充 ...

  8. [存储过程]中的事务(rollback)回滚

    在编写SQL Server 事务相关的存储过程代码时,经常看到下面这样的写法: begin tran update statement 1 ... update statement 2 ... del ...

  9. SQL Server在存储过程中编写事务处理代码的三种方法

    SQL Server中数据库事务处理是相当有用的,鉴于很多SQL初学者编写的事务处理代码存往往存在漏洞,本文我们介绍了三种不同的方法,举例说明了如何在存储过程事务处理中编写正确的代码.希望能够对您有所 ...

  10. 序列化与反序列化(1)Serializable —— Java原生态方法

    摘自:序列化与反序列化(1)Serializable -- Java原生态方法 作者:丶PURSUING 发布时间: 2021-05-08 19:20:21 网址:https://blog.csdn. ...

最新文章

  1. 如何查看Linux上程序或进程用到的库
  2. import com.sun.image.codec.jpeg.JPEGCodec不通过 找不到包
  3. 电子商务javaweb b2b b2c o2o平台
  4. java stream流_Java-8-流(1)
  5. 微信公众号开发之文本消息自动回复,以及系统关注自动回复,php代码
  6. postgresql fdw mysql_mysql同步数据到PostgreSQL(使用mysql_fdw)
  7. LeetCode 144. 二叉树的前序遍历(递归)(迭代)(颜色标记法)
  8. python三本经典书籍-关于 Python 的经典入门书籍有哪些?
  9. LINUX下载编译ccrtp(未成功)
  10. avc水平什么意思_avc是什么意思(pvc是什么材质)
  11. PB中MessageBox用法大全
  12. 国内最新可用Google谷歌镜像网站入口网站网址
  13. python操作VCF文件
  14. 高德地图的测试key_如何获取高德地图api key
  15. mysql实验三报告总结_数据库安全性实验报告的总结(共9篇).docx
  16. 星际争霸II sc2 台湾版试玩
  17. 精进1-如何反思 by采铜
  18. 机器学习常用的六种分类方法,Python代码详细都在这里!
  19. 腾讯云学生服务器购买指南
  20. CSS之标签选择器、ID选择器、类选择器

热门文章

  1. MIT6.830 lab1 SimpleDb 实验报告
  2. SQLite3中的SQL基本语句和高级语句
  3. 一文搞定Linux环境下线程编程,这些东西老师也不会教你。(史上最详细的线程攻略)
  4. 1.5_insert_sort_插入排序
  5. ftp 工具_ftp,win7的ftp工具
  6. lua 5.3 英文手册
  7. 网路防火墙iptables
  8. ExcelPackage 读取、导出excel
  9. [js]DOM 篇
  10. python 多线程 paramiko实现批量命令输入输出