2022-7-29 第六组 刘明延 学习笔记
2022/7/29 23:23:19
本文主要是介绍2022-7-29 第六组 刘明延 学习笔记,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
/*异常处理 编程序: 除数为0(不报错,输出为Intintty,无穷大,二进制) IO流没有关闭 停电 所有计算尽量不要用基本数据类型 当一个程序抛异常,后面的语句不再执行,类似于return的功能 处理异常的一种方式 异常的继承体系结构 最顶级的Throwable(所有错误和异常的父类) Error:错误,一般情况下不太可能出现的,绝大多数错误都会导致程序处于一个非正常的状态下,基本很难恢复 外力作用下,不考虑,在Java程序处理范围之外 Exception:异常,将程序执行中发生的不正常情况称之为异常 编译期异常:写代码抛异常,代码写得对也报错,生成try...catch解决,如果编译期不解决就一直报错 运行期异常(重点):RuntimeException,平时不报错,运行抛异常 自定义异常:Java中异常机制完善,但是结合实际业务:如年龄:-1 怎么自定义一个异常: 1.所有的异常必须是Throwable的子类,但是有点大材小用,没必要 2.如果要定义一个编译期异常,需要继承一个Exception类 3.如果要定义一个运行期异常,需要继承RuntimeException 在一个语句块中,如果使用Throw抛出一个编译期异常,就必须在方法的声明处使用throws关键字 来标记类型 我们为什么要主动抛异常,因为要配合全局异常处理机制来解决问题 在一个有返回值的方法中,如果有条件分支,一定要保证每种情况都有返回值,即使用异常代替 开发中大部分使用的都是运行期异常 重写的方法不能抛出比被重写更大的异常
//异常链 //一个异常被抛出去程序继续走,如果继续调用这个异常的方法让它被捕获或抛出,异常会扩散,下面都出错,连锁反应 //只要解决异常,处理异常,就是try...catch
//finally 关键字 //finally用来创建在try代码块后面执行的代码块 //无论是否发生异常,finally代码块中的代码一定会执行,一般finally //try...catch...finally... //顺序 try>finally>return
//如果一个方法没有捕获一个编译期异常,该方法必须使用throws声明(thorows是不负责任的) //出现异常要么try...catch,要么抛给下一级 //主方法就不要继续抛异常了,再抛就给JVM //service层:干脏活累活 //throws出现在声明处,可以用,隔开抛多个异常 学习心得:异常处理,我认为它的用法是是自己设规则让Java代码更贴合实际业务,如年龄为负,可设置异常 学习感受:这周要结束了,api调用很不熟练,有点复杂,有时候不知道用哪个,其他还好
这篇关于2022-7-29 第六组 刘明延 学习笔记的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-01为什么公共事业机构会偏爱 TiDB :TiDB 数据库在某省妇幼健康管理系统的应用
- 2024-04-26敏捷开发:想要快速交付就必须舍弃产品质量?
- 2024-04-26静态代码分析的这些好处,我竟然都不知道?
- 2024-04-26你在测试金字塔的哪一层?(下)
- 2024-04-26快刀斩乱麻,DevOps让代码评审也自动起来
- 2024-04-262024年最好用的10款ER图神器!
- 2024-04-2203-为啥大模型LLM还没能完全替代你?
- 2024-04-2101-大语言模型发展
- 2024-04-17基于SpringWeb MultipartFile文件上传、下载功能
- 2024-04-14个人开发者,Spring Boot 项目如何部署