Java异常Exception、ParseException和Throwable的区别

2022-09-18 09:27:39

开始描述区别的时候,我们先简单说下 异常的几个关键词try,catch,throw

try{if(StringUtil.isNotBlank(uId)){// 对会议清单表资源进行删除
				sysMeetingMetService.delSysMeetingMetList(uId, user);
				msg=message("sysMeetingMet.delete","[会议资料]删除成功!",newObject[0]);}else{
				msg=message("sysMeetingMet.delete","[会议资料]删除失败!",newObject[0]);returnnewJsonResult(false, msg);}}catch(Exception e){returnnewJsonResult(false, e.getMessage());}

try:尝试的意思,也就是说这块代码可能有问题,我就尝试着把它用大括号框起来,以防它出错。

catch:抓取的意思,我先指定一个异常,如果try里面的代码出现了这个异常,就把它抓取了。

抓取有什么用?能保证程序不会蹦。

catch可以有多个,但是只能抓取对应的异常,数组越界异常只能用来抓取数组越界异常,出现其他的异常它就没法管了。

这就好比,这个国家的陆军只能管陆军,空军只能管空军一样。但不管是陆军还是空军,国家都可以管。

所以Eception,无论是数组越界异常,还是字符串越界异常,它都可以管。

finally:无论怎么样,都会运行。

现在我们看一下 异常的继承关系

在这里插入图片描述
由图可知
Exception分有两大类:
ParseException:编译异常,不解决没法运行,必须处理。
RuntimeException:运行异常,编译期间可以不处理,但是可能发生在运行时期。

异常拓展

ArrayIndexOutOfBoundsException

Array:数组;OutOfBounds:超出了界限。所以是数组越界异常。

StringIndexOutOfBoundsException

String:字符串;Index:索引;OutOfBounds:超出了界限。所以是字符串越界异常。

IllegalArgumentException

Illegal:非法的;Argument:参数;非法的参数。所以是非法参数异常。

NullPointerException

NullPointer:空指针。所以是空指针异常。

资料来源:https://blog.csdn.net/weixin_39703561/article/details/110931932

  • 作者:爱小码
  • 原文链接:https://blog.csdn.net/qq_45064695/article/details/122989266
    更新时间:2022-09-18 09:27:39