mysql WorldCloud CPU HTTP请求 express websocket tfs cmake chartjs 网站后台管理模板 软件测试项目实战案例 jquery关闭当前窗口 删除数组第一个元素 hadoop环境变量配置 python实例 python模块 python参数 javaobject java的继承 java运算符 java写入文件 java获取现在时间 java定义变量 java基础框架 java字符串操作 滑动门代码 firework下载 3d软件下载 识别音乐的软件 R语言初学者指南 微信小程序源代码 ps扭曲变形 经典雅黑 深入解析windows操作系统 疯狂的站长 ps高手教程 通灵学院在哪 圣武枪魂 一键清除锁屏密码 ps光照效果
当前位置: 首页 > 学习教程  > 编程语言

Java检查异常、非检查异常、运行时异常、非运行时异常的区别

2021/1/13 20:39:08 文章标签: 测试文章如有侵权请发送至邮箱809451989@qq.com投诉后文章立即删除

Java把所有的非正常情况分为两种:异常(Exception)和错误(Error),它们都继承Throwable父类。 Java的异常(Exception和Error)分为检查异常和非检查的异常。 其中根据Exception异常进…

Java把所有的非正常情况分为两种:异常(Exception)和错误(Error),它们都继承Throwable父类。

Java的异常(Exception和Error)分为检查异常和非检查的异常。

其中根据Exception异常进行分类,可分为运行时异常和非运行时异常。

检查异常:

就是编译器要求你必须处理的异常。比如我们在编程某个文件的读于写时,编译器要求你必须要对某段代码try…catch… 或者 throws exception,这就是检查异常,简单的来说,你代码还没有运行,编码器就会检查你的代码,对可能出现的异常必须做出相对的处理。(比如当文件不存在时…)

如何处理检查异常:

1、继续往上抛出,(这是一个消极的方法),一直可以抛到java虚拟机来处理,通过throw exception抛出。

2、用try…catch捕获

(提示) 对于检查时的异常必须处理,或者必须捕获或者必须抛出

检查异常大概有哪些?

除了RuntimeException与其派生类(子类),以及错误(Error)。其他的差不多都是检查异常。

非检查异常:

编译器不要求强制处置的异常,虽然有可能出现错误,但是我不会在编译的时候检查。
如何处理非检查异常:

1、try…catch捕获

2、继续抛出

3、不处理

这类异常一般我们是不处理的,因为会很判断会出现什么问题,而且有些异常你也无法运行时处理,比如空指针。

非检查异常有哪些:

RuntimeException与其子类,以及错误(Error)

Exception异常进行划分,它可分为运行时异常和非运行时异常。

运行时异常:

都是RuntimeException类及其子类异常,如NullPointerException(空指针异常)、IndexOutOfBoundsException(下标越界异常)等,这些异常是非检查异常,程序中可以选择捕获处理,也可以不处理。这些异常一般是由程序逻辑错误引起的,程序应该从逻辑角度尽可能避免这类异常的发生。

运行时异常的特点是Java编译器不会检查它,也就是说,当程序中可能出现这类异常,即使没有用try-catch语句捕获它,也没有用throws子句声明抛出它,也会编译通过

非运行时异常:

是RuntimeException以外的异常,类型上都属于Exception类及其子类。从程序语法角度讲是必须进行处理的异常,如果不处理,程序就不能编译通过。如IOException、SQLException等以及用户自定义的Exception异常,一般情况下不要自定义检查异常。

https://www.cnblogs.com/oukele/p/10035238.html
1、简介

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述


本文链接: http://www.dtmao.cc/news_show_600380.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?