解读java try catch 异常后还会继续执行吗

 更新时间:2022年11月24日 15:48:56   作者:小甜瓜安东泥  
这篇文章主要介绍了解读java try catch 异常后还会不会继续执行问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

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中声明的异常类型不匹配,程序会中断。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • java实现分布式项目搭建的方法

    java实现分布式项目搭建的方法

    这篇文章主要介绍了java实现分布式项目搭建的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • Java内存缓存工具Guava LoadingCache使用解析

    Java内存缓存工具Guava LoadingCache使用解析

    这篇文章主要介绍了Java内存缓存工具Guava LoadingCache使用解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-01-01
  • SpringBoot使用jsoup爬取HTML的方法

    SpringBoot使用jsoup爬取HTML的方法

    jsoup 是一款 Java 的 HTML 解析器,它提供了一套非常便利的 API,可通过 DOM、CSS 通过类似于 JQuery 的操作方法来取出和操作数据,这篇文章主要介绍了SpringBoot使用jsoup爬取HTML,需要的朋友可以参考下
    2024-02-02
  • 基于javamelody监控springboot项目过程详解

    基于javamelody监控springboot项目过程详解

    这篇文章主要介绍了基于javamelody监控springboot项目过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • SpringBoot3.2.2整合MyBatis-Plus3.5.5依赖不兼容的问题解决

    SpringBoot3.2.2整合MyBatis-Plus3.5.5依赖不兼容的问题解决

    这篇文章给大家介绍了Spring Boot 3.2.2整合MyBatis-Plus 3.5.5依赖不兼容问题,文中通过代码示例和图文介绍的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-01-01
  • SpringBoot中的@Conditional 注解的使用

    SpringBoot中的@Conditional 注解的使用

    @Conditional是Spring4新提供的注解,它的作用是按照一定的条件进行判断,满足条件的才给容器注册Bean,本文主要介绍了SpringBoot中的@Conditional 注解的使用
    2024-01-01
  • 解决IDEA中Maven依赖包导入失败报红问题(总结最有效8种解决方案)

    解决IDEA中Maven依赖包导入失败报红问题(总结最有效8种解决方案)

    这篇文章主要介绍了解决IDEA中Maven依赖包导入失败报红问题,本文通过图文详解给大家总结了最有效的8种解决方法,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • Java网络编程UDP实现消息发送及聊天

    Java网络编程UDP实现消息发送及聊天

    这篇文章主要为大家详细介绍了Java网络编程UDP实现消息发送及聊天,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-07-07
  • 教你创建springcloud微服务的基础子服务的超详细过程

    教你创建springcloud微服务的基础子服务的超详细过程

    这篇文章主要介绍了创建springcloud微服务的基础子服务,主要是创建两个springboot服务,在教程中增加springcloud相关组件,本文分步骤给大家介绍的非常详细,需要的朋友可以参考下
    2022-04-04
  • SpringBoot利用validation实现优雅的校验参数

    SpringBoot利用validation实现优雅的校验参数

    数据的校验是交互式网站一个不可或缺的功能,如果数据库中出现一个非法的邮箱格式,会让运维人员头疼不已。本文将介绍如何利用validation来对数据进行校验,感兴趣的可以跟随小编一起学习一下
    2022-06-06

最新评论