异常
java.lang.Exception 异常
java.lang.Error 错误
异常:导致程序的正常流程被中断的事件,叫做异常
1.捕获异常
try{
//可能产生异常的代码
}catch(Exception e){
//异常的处理
//e.printStackTrace();
}finally{
//一定会执行的代码,如关闭资源
}
可以使用可能产生异常的父类进行catch
多个异常可以进行多个catch{}, jdk1.7后可以catch(Exception1|Exception2 e){}
2.抛出异常。谁调用,谁处理
method1 throws了一个异常,哪个方法调用method1就处理,也可以继续向上抛出。
3.throws与throw区别:
1)throws 出现在方法声明上,而throw通常都出现在方法体内。
2)throws 表示出现异常的一种可能性,并不一定会发生这些异常;throw则是抛出了异常,执行throw则一定抛出了某个异常对象。
4.异常分类:检查性异常,运行时异常,错误
(1)检查性异常(CheckedException)
必须进行处理的异常,要么try catch住,要么往外抛,谁调用,谁处理
如:FileNotFoundException,ParseException
(2)运行时异常(RunningException)
即便不进行try catch,也不会有编译错误
如:AirthmeticException, ArrayIndexOutOfBoundsException, NullPointerException
(3)错误(Error)
指的是系统级别的异常,通常是内存用光了
如:OutOfMemoryError
5.自定义异常
继承Exception
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗