【JAVASE】异常(10)
程序员文章站
2022-10-03 17:12:14
引言1点了,在经历了激烈的思想斗争(边看剧边斗争)之后,还是决定锻炼锻炼身体,熬一次夜,把今天的肝完。知识点总结异常异常的定义异常,就是有异于常态,和正常情况不一样;在java中,组织当前方法或作用域的情况,称之为异常。异常的分类......
引言
无名之辈
知识点总结
异常
异常的定义
异常,就是有异于常态,和正常情况不一样;在java中,组织当前方法或作用域的情况,称之为异常。
异常的分类
- 按照 ‘在编译时是否能被检验’ 区分:异常可以分为两类,检验异常(CheckedException)和非检验异常(UnCheckedException);非检验异常在编译器检测不到,又可分为运行期异常(RuntimeException)和错误(Error);
-
按照异常的严重性可分为可处理的异常和不可处理的异常;
可处理的异常类封装在java.lang.Exception中,不可处理的在java.lang.Error中。
继承关系
异常的产生原理
简单理解为JVM得到异常后,抛出异常;
下面以ArrayIndexOutOfBoundsException异常来具体解释:
异常的处理
Throw关键字
Throw用于抛出指定异常,无论是被实例化还是被捕获的异常都可以用Throw抛出;
如果是RuntimeException或其子类,可以不用处理;编译期异常就要用Throws或try_catch处理。
//抛出运行期异常
private static void Menthod2() {
throw new RuntimeException("运行期异常 ");
}
//抛出运行期异常
private static void Menthod2() throws IOException {
throw new IOException("编译期异常 ");
}
Throws关键字
Throw是处理异常的第一种方式;
注意事项
- 必须放在方法声明处;
- 可以处理多个异常;
- 最终也是交给JVM处理;
private static void Menthod2() throws IOException {
throw new IOException("异常抛出,由throws处理 ");
}
Try_Catch()
try{ …}块中代码出现异常后,会直接执行catch块中的代码,且由于不用JVM处理,故程序不会终止,后续代码仍然能够执行;
try{
int[] a={1,3,4,5,6,7,8};
Menthod1(a,10);
}catch (Exception e){
System.out.println("数组越界了");
}
System.out.println("后续接着执行,没影响~~~");
本文地址:https://blog.csdn.net/alpha_xia/article/details/107329229
上一篇: 屏和TP谁先休眠的问题
推荐阅读
-
性能升级功率更大 紫米推出10号移动电源Pro
-
Win10系统电脑在使用浏览器播放视频时蓝屏错误代码0x000008e的多种解决方法
-
推荐10款伪静态url用法实例
-
使用Win10+Android+夜神安卓模拟器,搭建ReactNative开发环境
-
诡异异常! adodb连接oracle 出错 但是用PL/SQl能正常连接
-
phpmyadmin报错原因及解决办法:无法在发生异常时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP 安装
-
SQL查询性能提高的10个技巧
-
PHP命令行中运行 pear help 出现异常
-
分享盘点10个可免费使用的网站CDN加速服务
-
win10系统新建跨区卷是灰色怎么办? win10磁盘新建跨区卷的技巧