2022-07-29第七组姜珊学习笔记
异常
- 认为一段代码可能出现异常,可以使用try-catch异常处理机制解决从而保证程序健壮性
- 将该代码块->选中->快捷键 CTRL+alt+t->选中try-catch
- 如果进行了异常处理,那么即使出现异常,程序可以继续执行
基本概念
Java语言中,将程序执行中发生的不正常情况称为“异常”。(开发过程中的语法错误和逻辑错误不是异常)
执行过程中所发生的异常事件可分为两类
- .1) Error(错误):Java虚拟机无法解决的严重问题。如:JVM系统内部错误、资源
耗尽等严重情况。比如:StackOverflowError[栈溢出]和OOM(out of
memory). Error是严重错误,程序会崩溃。 - Exception:其它因编程错误或偶然的外在因素导致的一般性问题,可以使用针对性的代码进行处理。例如空指针访问,试图读取不存在的文件,网络连接中断等等,Exception分为两大类:运行时异常[]和编译时异常[]。
异常体系图
异常体系图的小结
1.异常分为两大类,运行时异常和编译时异常.
2.运行时异常,编译器不要求强制处置的异常。一般是指编程时的逻辑错误,是程序员应该避免其出现的异常java.lang.RuntimeExcepti类及它的子类都是运行时异常
3.对于运行时异常,可以不作处理,因为这类异常很普遍,若全处理可能会对程序的可读性和运行效率产生影响
编译时异常,是编译器要求必须处置的异常。
运行时异常
1.NullPointerException空指针异常
NullPointerException.java
- 当应用程序试图在需要对对象的地方使用null时,抛出该异常
2.ArithmeticException数学运算异常
- 当出现异常运算条件时,抛出此异常。
3.ArrayindexOutOfBoundsException数组下标越界异常
- 用非法索引访问数组时抛出的异常,如果索引为负或者大于等于数组大小,则该索引为非法索引
4.Class CastException类型转换异常
- 当试图将对象强制转换为不是实例的子类时,抛出该异常
5.NumberFormatExxception数字格式不正确异常
- 当应用程序试图将字符串转换成一种数值类型,但该字符串不能转换为适当格式时,抛出该异常=>使用异常我们可以确保输入是满足条件数字
编译异常
是指在编译期间,就必须处理的异常,否则代码不能通过编译。
常见的编译异常
SQLException//操作数据库时,查询表可能发生异常
√IOException//操作文件时,发生的异常
√FileNotFoundExceptioa//当操作一个不存在的文件时,发生异常
√ClassNotFoundException//加载类,而该类不存在时,异常
√ EOFException!/操作文件,到文件未尾,发生异常
√ lllegalArguementException //参数异常
异常处理
基本介绍
异常处理就是当异常发生时,对异常处理的方式。
异常处理的方式
1.try-catch-finally 程序员在代码中捕获发生的异常,自行处理
2.throws 将发生的异常抛出,交给调用者(方法)来处理,最顶级的处理者就是JVm
throws异常处理
基本介绍
1)如果一个方法(中的语句执行时)可能生成某种异常,但是并不能确定如何
处理这种异常,则此方法应显示地声明抛出异常,表明该方法将不对这些异常进行处理,而由该方法的调用者负责处理。
2)在方法声明中用throws语句可以声明抛出异常的列表,throws后面的异
常类型可以是方法中产生的异常类型,也可以是它
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律