解读java try catch 异常后还会继续执行吗
作者:小甜瓜安东泥 时间:2022-05-11 01:25:24
java try catch异常后还会继续执行吗
catch中如果你没有再抛出异常,那么catch之后的代码是可以继续执行的,但是try中,报错的那一行代码之后 一直到try结束为止的这一段代码 , 是不会再执行的。
//代码1
public static void test() throws Exception {
throw new Exception("参数越界");
System.out.println("异常后"); //编译错误,「无法访问的语句」
}
//代码2
try{
throw new Exception("参数越界");
}catch(Exception e) {
e.printStackTrace();
}
System.out.println("异常后");//可以执行
//代码3
if(true) {
throw new Exception("参数越界");
}
System.out.println("异常后"); //抛出异常,不会执行
小结下
若一段代码前有异常抛出,并且这个异常没有被捕获,这段代码将产生编译时错误「无法访问的语句」。如代码1;
若一段代码前有异常抛出,并且这个异常被try…catch所捕获,若此时catch语句中没有抛出新的异常,则这段代码能够被执行,否则,同第1条。如代码2;
若在一个条件语句中抛出异常,则程序能被编译,但后面的语句不会被执行。如代码3
try-catch块捕获异常三种情况
第一种情况
try块中所有语句正常执行完毕,不会发生异常,那么catch块中的所有语句都将会被忽略
第二种情况
try语句块在执行中遇到异常,那么在try块中其余剩下的代码都将被忽略,系统会自动生成相应的异常对象,如果这个异常对象与catch中声明的异常类型相匹配,则相应的catch块将会被执行
第三种情况
try语句块在执行中遇到异常,如果这个异常对象与catch中声明的异常类型不匹配,程序会中断。
来源:https://www.cnblogs.com/YuyuanNo1/p/10317970.html
标签:java,try,catch,异常,继续执行
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
SpringBoot整合Security安全框架实现控制权限
2022-10-03 14:37:15
![](https://img.aspxhome.com/file/2023/3/65583_0s.png)
Java由浅入深刨析继承
2023-11-23 08:04:24
![](https://img.aspxhome.com/file/2023/4/59564_0s.jpg)
深入理解MyBatis中的一级缓存与二级缓存
2022-05-25 09:41:34
![](https://img.aspxhome.com/file/2023/7/66057_0s.png)
SpringMvc+Mybatis+Pagehelper分页详解
2021-08-13 14:15:11
Flutter基于Dart Unwrapping Multiple Optional小技巧
2023-07-05 11:44:19
Java中的引用类型和使用场景详细
2023-11-29 03:58:19
解析Java线程同步锁的选择方法
2023-02-08 11:02:32
java实现幸运抽奖功能
2023-11-27 07:24:16
![](https://img.aspxhome.com/file/2023/9/60479_0s.jpg)
java实现简单单链表
2023-10-30 09:45:46
![](https://img.aspxhome.com/file/2023/2/58722_0s.jpg)
Java+Swing实现五子棋游戏的示例代码
2022-06-27 11:56:22
![](https://img.aspxhome.com/file/2023/9/66079_0s.jpg)
Android 通过SQLite数据库实现数据存储管理
2023-09-28 11:31:59
![](https://img.aspxhome.com/file/2023/1/86741_0s.png)
Android的消息机制
2023-08-05 10:19:28
SpringBoot之Helloword 快速搭建一个web项目(图文)
2023-08-23 17:36:21
![](https://img.aspxhome.com/file/2023/8/58448_0s.jpg)
Java中stream处理中map与flatMap的比较和使用案例
2023-11-21 02:27:53
SpringBoot深入了解日志的使用
2023-01-06 15:40:34
![](https://img.aspxhome.com/file/2023/7/65177_0s.png)
Java使用ExecutorService来停止线程服务
2023-01-25 12:10:56
spring boot2结合mybatis增删改查的实现
2023-07-07 01:17:31
![](https://img.aspxhome.com/file/2023/4/61644_0s.png)
java基于JDBC连接Oracle 11g Release2实例分析
2022-06-06 02:36:36
IDEA搭建dubbo项目的过程及存在的问题
2023-10-15 17:56:53
![](https://img.aspxhome.com/file/2023/5/64065_0s.jpg)
三种Java自定义DNS解析器方法与实践
2022-01-13 10:12:11