异常 ExceptionException分为 checked异常(受检异常) 和 unchecked(非受检异常)checked异常需要在代码中显式处理的异常,否则会编译报错,如有能力则自行处理,如果无法处理则向调用方抛出异常unchecked异常是运行时异常,它们都继承自RuntimeException,不需要显示的处理异常unchecked分为三类:1.可预测异常: 如 IndexOutOfBoundsException NullPointException等,需要做好边界检查、空值判断2.需要捕捉的异常: 如Dubbo进行RPC调用时超时异常,此类需要客户端进行显示处理3.可透出异常: 框架或者系统产生的且会自行处理的异常finally 代码块,通常用于处理善后工作,如果finally代码块没有执行,可能原因有以下三个:1. 没有进入try代码块2. 进入try代码块,但是代码运行中出现了死循环或者死锁状态3. 进入了try代码块,但是执行了System.exit()操作注意:finally是在return表达式运行后执行的,此时将要return的结果已经暂时存起来,待finally代码块执行结束后再将之前的暂存的结果返回。finally代码块的职责是: 清理资源、释放连接、关闭管道流等操作。finally使用return会使得返回值非常不可控,避免在返回值中使用return语句
详细解决方案
异常相关概念
热度:4 发布时间:2023-10-08 18:45:45.0
相关解决方案