栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java异常机制笔记

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java异常机制笔记

1.异常分类

检查性异常:
是指程序员无法预见的异常,是用户操纵可能出现的,比如打开一个不存在的文件,这种异常代码层次就应该预知并进行处理。
运行时异常
运行时异常可能在代码编译阶段被检查通过,比如空指针和数组越界,这些运行时就会出错。
错误
错误不是异常,而是脱离程序员控制的问题。错误在代码中通常被忽略。例如,当栈溢出
时,一个错误就发生了,它们在编译也检查不到的。

1.1 Error

是由java虚拟机抛出的异常,大多数错误和代码运行时无关,比如java虚拟机运行错误。
这些异常发生时,Java虚拟机(JVM)一般会选择线程终止。

1.2 Exception

Exception异常是最大的异常,下面的RuntimeException (运行时异常)
运行时异常又细分。

ArrayIndexOutOfBoundsException (数组下标越界)
NullPointerException (空指针异常)
ArithmeticException (算术异常)
MissingResourceException (丢失资源)
ClassNotFoundException (找不到类)

这些异常是在代码检查阶段不会被检查的,在运行的可能会发生错误。可以捕获也可以不捕获。

检查性异常IOException 、 SQLException 等以及用户自定义的 Exception 异常,一般情况下不自定义检
查异常。可以捕获或者抛出,不然编译不通过

Error 和 Exception 的区别: Error 通常是灾难性的致命的错误,是程序无法控制和
处理的,当出现这些异常时,Java虚拟机(JVM)一般会选择终止线程; Exception 通常情况下是可
以被程序处理的,并且在程序中应该尽可能的去处理这些异常。

2.Java异常处理机制 2.1 抛出异常

遇到的异常,向上一级进行抛出,在最上级进行统一处理。

 public static void main(String[] args) throws Exception {}
2.2 异常捕获

try 、 catch 、 finally 、 throw 、 throws

 try {

        }catch (Exception e){

        }finally{ 
            
        }

对于最上级,throws 无法再抛出异常,需要对异常进行统一的捕获处理。
对于可能发生异常的代码放在try
对于捕获到的异常再catch处理
对于一些必须要关闭的资源,需要在finally进行处理,比如io关闭连接等

2.3 try, catch,finally ,return 执行顺序

1.执行try,catch , 给返回值赋值
2.执行finally
3.return

2.4 自定义异常处理

自定义异常,自己创建类,继承Exception 即可

class MyException extends Exception {
}
 try {

        }catch (MyException e){

        }finally{

        }
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/966768.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号