检查型异常和非检查型异常——Java
文章目录
- 检查型异常和非检查型异常——Java
- 检查型异常
- 非检查型异常
- 结语
检查型异常和非检查型异常——Java
Java语言规范将派生于Error类或RuntimeExceprion类的所有异常称为非检查型(unchecked)异常,所有其他的异常称为检查型(checked)异常。这是个很有用的术语。
Java中的异常类型分布:
但是,单单这样理解有些困难,我查了一些资料,用一些简单的语言来解释它们。
检查型异常
检查型异常,简单来说就是在现实中无法避免的,我们在设计程序时无法预知的异常抛出。例如:读取一个文件的内容。如果这个文件不存在或者程序没有读取权限时,就会抛出一个异常。我们必须要用throws
声明它会出现的异常类型,或者用try...catch
来捕获异常,并指明出现错误时要执行的操作。例如:
- 试图超越文件末尾继续读取数据;
- 试图打开一个不存在的文件;
- 试图根据给定的字符串查找 Class 对象,而这个字符串表示的类并不存在。
这类检查型异常必须要在代码中声明出来,它是不可避免和预知的。如果没有声明,集成开发环境IDE将会报错!它会帮我们检查,故称 检查型异常。
这类异常我们必须要解决。
非检查型异常
非检查型异常,就是在代码实现阶段就可以预知和避免的一些异常,例如从 RuntimeExcrption类 和 Error类 中继承的那些非检查型异常,RuntimeExcrption类包括:
- 错误的强制类型转换;
- 数组访问越界;
- 访问null指针。
这些异常不需要在代码中生命,IDE也不会报错指出。这些异常我们完全有能力去避免和预知,IED不会帮我们检查这其中的错误!故称为 非检查型异常。
同时,我们也不需要声明Java的内部错误,即从 Error类 继承的异常。任何程序代码都可能抛出那样的异常,而我们对此完全无法控制。
结语
这就是对在Java中,检查型异常和非检查型异常的简单浅显理解,希望对Java的初学者有所帮助。
检查型异常和非检查型异常——Java相关推荐
- java非检查性异常有哪些_Java异常处理-检查性异常、非检查性异常、Error
一.Java异常处理详解 异常.png 目录: 1.java中异常的分类 1.1 异常(Exception) 1.1.1 运行时异常(RuntimeException) 可以不需要捕获 1.1.2 编 ...
- 检查异常和非检查异常 有空你去学一下检查异常和非检查异常
https://blog.csdn.net/weixin_39220472/article/details/81056647 Java检查异常和非检查异常,运行时异常和非运行时异常的区别 灰太狼_cx ...
- Java检查异常、非检查异常、运行时异常、非运行时异常的区别
Java检查异常.非检查异常.运行时异常.非运行时异常的区别 参考文章: (1)Java检查异常.非检查异常.运行时异常.非运行时异常的区别 (2)https://www.cnblogs.com/ou ...
- java运行时异常的特点是什么_Java运行时异常和非运行时异常
1.Java异常机制 Java把异常当做对象来处理,并定义一个基类java.lang.Throwable作为所有异常的超类.Java中的异常分为两大类:错误Error和异常Exception,Java ...
- 运行时异常与非运行时异常有什么区别?
运行时异常与非运行时异常有什么区别? 运行时异常 RuntimeException 又称为非检查异常 uncheck exception.是 Exception 的子类. 在 Java 中,异常可以分 ...
- Java运行时异常和非运行时异常
1.Java异常机制 Java把异常当做对象来处理,并定义一个基类java.lang.Throwable作为所有异常的超类.Java中的异常分为两大类:错误Error和异常Exception,Java ...
- 运行时异常和非运行时异常
[强制]Java 类库中定义的可以通过预检查方式规避的RuntimeException异常不应该通过catch 的方式来处理,比如:NullPointerException,IndexOutOfBou ...
- Java基础——运行时异常和非运行时异常
文章目录 Java中异常机制的体系结构 Error(错误) Exception(异常) 运行时异常和非运行时异常的区别 结束 Java中异常机制的体系结构 在Java中,万物皆对象,异常也不例外. E ...
- Java 运行时异常和非运行时异常
异常类型分为两类:运行时异常和非运行时异常. 一.运行时异常: 运行时异常(RuntimeException),一般不需要程序员进行捕获. 例如:NullPointException,IndexOut ...
最新文章
- XPath crash course note
- 人工智能改变未来教育的5大方式
- SQL Server 2012--Reporting Service报表阅览工具 - Power View【转载】
- 来晚了--SALTSTACK要弄起
- Apache2.4中开通HTTP基本认证
- H5在原生手机上显示选中文字效果
- python苦逼_自学Python编程的第六天(最后代码有更好的请告诉我)----------来自苦逼的转行人...
- 伯克利、OpenAI等提出基于模型的元策略优化强化学习
- android adb 模拟来电,在Android模拟器中模拟GPS、打电话、发短信……
- L1-007. 念数字-PAT团体程序设计天梯赛GPLT
- 面向对象 “上”
- pytorch-使用GPU加速模型训练
- JQuery easyui (1) Draggable(拖动)组件
- APUE---chap6系统数据文件和信息---6.2~6.4 6.10
- 0xe06d7363怎么解决(0xe06d7363怎么解决DNF)
- MySQL查询不同年份母亲节_计算某年母亲节是哪一天_晴空呐的博客-CSDN博客
- 我的脚本-一键禁用启用笔记本自带键盘
- java毕业设计智能小区物业管理系统Mybatis+系统+数据库+调试部署
- UTF-8、en_US.UTF-8和zh_CN.UTF-8的区别
- GAN(生成对抗网络)和IQA(图像质量评价能擦出什么样的火花呢?)简单聊一些近来published的论文