java异常处理机制

异常处理机制能让程序在异常发生时,按照代码的预先设定的异常处理逻辑,针对性地处理异常,

让程序尽最大可能恢复正常并继续执行,且保持代码的清晰。
Java中的异常可以是函数中的语句执行时引发的,也可以是程序员通过throw 语句手动抛出的,

只要在Java程序中产生了异常,就会用一个对应类型的异常对象来封装异常,JRE就会试图寻找异常处理程序来处理异常。

Throwable类是Java异常类型的顶层父类,一个对象只有是 Throwable 类的(直接或者间接)实例,他才是一个异常对象,

才能被异常处理机制识别。JDK中内建了一些常用的异常类,我们也可以自定义异常。

Java异常的分类和类结构图

Java标准库内建了一些通用的异常,这些类以Throwable为顶层父类。

Throwable又派生出Error类和Exception类。

错误:Error类以及他的子类的实例,代表了JVM本身的错误。错误不能被程序员通过代码处理,Error很少出现。因此,程序员应该关注Exception为父类的分支下的各种异常类。

异常:Exception以及他的子类,代表程序运行时发送的各种不期望发生的事件。可以被Java异常处理机制使用,是异常处理的核心。

可分为检查时异常与非检查时异常

例如:RuntimeException异常属于非检查时异常

就是程序员不强制使用try catch finally 或者throws

IOException属于检查时异常 强制使用try catch finally或者 throws 才可以在编译通过

优缺点非检查时异常:简单方便代码少,

缺点:出错用户体验感不好。

最新文章

  1. 深入理解JavaScript的闭包特性如何给循环中的对象添加事件
  2. Device nodes and device stacks
  3. paramiko 遭遇socket.error: Socket is closed 错误的解决办法
  4. [转载]javascript创建对象的几种方式
  5. yii2.0 的数据的 增
  6. MFC 密码框
  7. 语音合成,语音播报功能(系统)-b
  8. C语言基础文件读写操作
  9. css基本框架
  10. Spring整合Hibernate--声明式事务管理
  11. 如何将1234通过java变成4321,下面介绍几种办法。
  12. Linux 学习笔记_12_文件共享服务_2_FTP应用--vsftpd
  13. 26 Arcpy跳坑系列——ExportToPNG
  14. 20175236 JAVA MyCP(课下作业)
  15. Python中的logging模块【转】https://www.cnblogs.com/yelin/p/6600325.html
  16. clone data
  17. QZEZ第一届“饭吉圆”杯程序设计竞赛
  18. js基础-单体对象日期对象
  19. sqlserver 2008 还原数据库时,提示有用户正在使用,无法取得使用占有权
  20. var this.value 可在任意地方 声明 类成员变量。如果可以利用在C++ 那该有多好啊

热门文章

  1. sklearn--模型的评价
  2. 在SqlServer和Oralce中创建索引
  3. PAT Basic 1083 是否存在相等的差 (20 分)
  4. python+Appium自动化:TouchAction九宫格实战
  5. tsung报告中Transactions Statistics缺失问题
  6. kvm批量创建虚拟主机
  7. Elasticsearch:fuzzy 搜索 (模糊搜索)
  8. 【经典dp 技巧】8.13序列
  9. vulkan 的icb
  10. css浮动(float)及如何清除浮动