OOP知识整合----异常

目录

一、定义:

1、异常:

2、报错:

二、异常处理:

1、使用 try-catch 自己处理异常:

2、用 throw 和 throws 抛出异常

三、Finally、return、exit() 的作用

1、finally

2、Return

3、exit()

四、常见的异常:

1、Exception                          

2、InputMismatchException               

3、ArithmeticException               

​​​​​​​4、ArrayIndexOutOfBoundsException       

​​​​​​​5、NullPointerException                   

​​​​​​​6、ClassCastException                  

​​​​​​​7、ClassNotFoundException             

​​​​​​​8、IllegalArgumentException           

​​​​​​​9、NumberFormatException                

五、自定义异常

六、异常分类

1、编译时异常(编写时出现)

2、运行时异常(运行时出现)

七、异常结构图

1、Throwable 是类不是接口

2、Error 表示错误,不是我们用程序可以解决的

3、Exception 是所有异常的根,下面又分为很多种异常情况

八、数组扩展

1、一维数组

2、二维数组

3、三维数组


一、定义:

1、异常:

异常指程序执行中可能出现的不正常现象,异常不是错误(表面上可以运行,后台会报错)

2、报错:

是我们无法解决的问题,eg: 断电

注:异常会提前结束程序,从出现异常的地方开始,后面的程序不会执行

二、异常处理:

1、使用 try-catch 自己处理异常:

( try-catch 自己处理有问题自己直接解决)

try{

          可能出现异常的程序段

      }catch(Excption e){

          对异常的处理程序

     }

(1) try 块中放着可能出现异常的程序段,当出现异常时,异常会被 catch 块捕获,并做出处理;如果没有出现异常,则 catch 块不执行

(2)catch 块可以有多个,用来处理各种异常情况

(3)当有子异常和父异常时,子异常的 catch 写在父异常的 catch 前

InputMismatchException 是子异常 Excption 是父异常

(4)从出现异常的地方到 catch 之间的代码不会执行(从异常语句往后都不执行)

2、用 throw 和 throws 抛出异常

(抛出异常,但是不处理,最后处理还是用 try-catch )

(1) 用 throws 声明异常,表示可能会抛出哪些异常

(2)用 throw 抛出异常信息,抛出给了调用者

(3) 调用者就是调用该方法的对象,同理,调用者也可以继续抛出异常,但是最终一定要对异常进行处理。

 (4)不推荐使用 throw 和 throws 处理异常,更推荐使用 try-catch 自己处理异常

三、Finally、return、exit() 的作用

1、finally

表示最终无论如何都会执行的块,通常放在 try-catch最后执行

2、Return

表示结束方法并返回结果,但是 final 块还是会执行,通常放在 try-catch的try{}中

3、exit()

表示退出程序,后面的程序将不再执,即使后面有 return 和 finally , 都不会执行

优先级:

System.exit(0) > finally > return

四、常见的异常:

1、Exception                          

 异常层次结构的根类(父类,所有异常的集合)

2、InputMismatchException               

 输入不匹配异常

​​​​​​​3、ArithmeticException               

算术异常

​​​​​​​4、ArrayIndexOutOfBoundsException       

数组下标越界(下标超值)

​​​​​​​5、NullPointerException                   

空值异常(访问 null 对象失败)

​​​​​​​6、ClassCastException                  

类强制转换异常

​​​​​​​7、ClassNotFoundException             

类加载异常

​​​​​​​8、IllegalArgumentException           

方法接收了非法参数异常

​​​​​​​9、NumberFormatException                

数字格式转换异常

五、自定义异常

一个类只要继承了 Exception 那么这个类就是一个自定义异常类

六、异常分类

1、编译时异常(编写时出现)

2、运行时异常(运行时出现)

七、异常结构图

            

1、Throwable 是类不是接口

2、Error 表示错误,不是我们用程序可以解决的

3、Exception 是所有异常的根,下面又分为很多种异常情况

八、数组扩展

1、一维数组

一维数组是最简单的形式,它是具有相同数据类型的元素的有序集合。这些元素存储在连续的内存位置上,并通过索引访问。一维数组可以表示为单行或单列的表格,其中每个元素在表格中占据一个位置

2、二维数组

二维数组是具有行和列的表格结构,也称为矩阵。它由多个一维数组组成,每个一维数组代表矩阵中的一行或一列。二维数组的元素可以通过使用行和列的索引访问。

存值和声明必须写一维下标长度,也就是第一个[]

二维数组声明:必须给一维指定长度

取值要用循环

3、三维数组

三维数组则是一个具有多个表格形式的数据结构,每个表格可以看作是一个二维数组。三维数组的元素可以通过使用三个索引来访问,第一个索引表示表格,第二个索引表示行,第三个索引表示列。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值