异常

第十章、异常

作用:程序出问题,异常包着可以继续执行,不会停止运行

1、异常介绍

1.1、基本概念

java语法中,将程序执行中发生的不正确情况称为“异常”。(语法和逻辑错误不是异常)

1.2、异常分为两类

1、Error(错误):java虚拟机无法解决的严重问题(程序会奔溃)

(1)eg:JVM系统内部错误,资产耗尽,栈溢出

2、Exception:其他因编程错误或偶然的外在因素导致一般性问题,可以针对性的代码进行处理(例如空指针异常,网络连接)
(1)Exception分为两大类
①运行时异常

​ ②编译时异常

1.3、异常体系图

1、常见的运行时异常

1、NullPointerException:空指针异常

(1)当应用程序试图在需要对象的地方使用null时,抛异常

2、ArithmeticException:数学运算异常

(1)异常的运算条件。eg:除数为0

3、ArrayIndexOutOfBoundsException:数组下标越界异常

(1)非法索引访问数组,索引下标超过范围。

4、ClassCastException:类型转换异常

(1)试图将对象强制转换为不是实例的子类

5、NumberFormatException:数字格式不正确异常

(1)字符串转换为数字类型,但是字符串不能转换为合适的数字,抛出异常。

2、编译异常

1、介绍

(1)理解:编译期间,必须处理的异常,否则不通过

2、常见的编译异常

(1)SQLException:操作数据库时,查询表可能发生异常

(2)IOException:文件操作时,发生的异常

(3)FileNotFoundException:文件不存在发生异常

(4)ClassNotFoundException:加载类,类不存在时,异常

(5)EoFException:操作文件,到文件末尾,发生异常

(6)IIIegalArguementException:参数异常

1.4、异常处理

1、基本介绍

1、异常处理的方式

2、异常处理的方式

3、try-catch-finally

1、程序员在代码中捕获发生的异常,自行处理

2、示意图:

3、基本语法

4、☣⚔try-catch异常处理注意事项

(1)如果发生异常,异常后的(try内)的代码不会执行,直接进入打catch中

(2)如果没有异常,则执行try内代码,不执行catch

(3)如果不管有没有异常都要执行的代码,可以放到-finally中。

(4)❗try代码块有多个异常,可以使用多个catch捕获不同异常进行处理,要求子类异常写在前面,父类异常写在后面

(5)允许有try-finally配合,可以不使用catch,相当于没有捕获异常,程序会挂掉

​ ①应用场景有:执行一段代码,不管是否发生异常,都必须执行某个业务逻辑

5、throws

1、将发生的异常抛出,交给调用者(方法)处理,最高级的处理着就是JVM

2、示意图:

6、☢throws异常处理,注意事项

(1)运行时的异常,程序没有明确处理,默认就是throws的方式处理

(2)子类重写父类的方法时,对抛出异常的规定

​ ①子类的重写抛出的异常要和父类异常一致

​ ②或者子类重写抛出的异常要小于父类抛出的异常

(3)try-cathch和throws不能同一时刻出现。

2、自定义异常

1、基本概念:程序中出错,但是错误信息并没有在Throwable子类何总描述处理,自己设计,用于描述错误

2.1、自定义异常的步骤

1、定义类:自定义异常类名(程序员写)继承Exception或者RuntimeException

2、如果继承了Exception,属于编译异常

3、继承RuntimeException,属于运行异常

2.2、throws 和throw区别

1、比较表

2、例题

第十三章、常用类

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇