当前位置: 首页 > news >正文

try-catch-finally

一、结构:

  1. try 块:包含可能抛出异常的代码

  2. catch 块:捕获并处理特定类型的异常

  3. finally 块:无论是否发生异常都会执行的代码(可选)

try {// 可能抛出异常的代码
} catch (ExceptionType1 e) {// 处理 ExceptionType1 类型的异常
} catch (ExceptionType2 e) {// 处理 ExceptionType2 类型的异常
} finally {// 无论是否发生异常都会执行的代码
}

二、处理流程:

1.程序执行 try 块中的代码

2.如果 try 块中抛出异常:

  • 检查 catch 块是否能匹配该异常类型

  • 按顺序匹配,执行第一个匹配的 catch 块

  • 如果没有匹配的 catch 块,异常会向上传播

3.无论是否发生异常,finally 块都会执行

三、finally 块特点:

  1. 通常用于释放资源(如关闭文件、数据库连接等)

  2. 即使在 try 或 catch 块中有 return 语句,finally 块也会执行

  3. 如果 finally 块中有 return,会覆盖 try/catch 中的 return

public int testFinally() {try {return 1;} finally {return 2;  // 实际返回2}
}

http://www.dtcms.com/a/322052.html

相关文章:

  • 3-防火墙
  • 【JAVA EE初阶】多线程(进阶)
  • linux 一次性查看所有docker容器网络模式和端口映射
  • 打破枷锁:Python GIL下的并发突围之路
  • 两个函数 quantize() 和 dequantize() 可用于对不同的位数进行量化实验
  • 睿抗开发者大赛国赛-24
  • 【深度学习】动手深度学习PyTorch版——安装书本附带的环境和代码(Windows11)
  • 【实证分析】地区市场公平竞争程度数据集-含do代码(2012-2024年)
  • JAVA接口请求测试及调用
  • 直播美颜SDK快速上手指南:从API调用到美白滤镜效果调优
  • Godot ------ 制作属于自己的卡牌
  • 从伪造的验证码到远程攻击工具 (RAT):2025 年网络欺骗威胁趋势
  • 同一局域网下,vmwear为啥xshell连不上,ssh也安装了
  • 加密流量论文复现:《Detecting DNS over HTTPS based data exfiltration》(下)
  • 【2025】AutoDock最新保姆级安装教程(附安装包+永久使用方法)
  • 项目历程—画图板
  • C语言学习笔记——编译和链接
  • Vue 自定义水印指令实现方案解析
  • ClickHouse集群部署实践---3分片2副本集群
  • 主成分分析加强版:MP-PCA
  • fio文件读写io带宽测试工具
  • 从零构建TransformerP2-新闻分类Demo
  • Spring AI 系列之三十九 - Spring AI Alibaba-集成百炼知识库
  • 【Python-Day 38】告别通用错误!一文学会创建和使用 Python 自定义异常
  • 【Nginx基础①】 | VS Code Remote SSH 环境下的静态资源与反向代理配置实践
  • 明厨亮灶场景下误检率↓76%:陌讯多模态融合算法实战解析
  • 蓝桥杯----大模板
  • 【NFTurbo】基于DockerCompose一键部署
  • Redis中String数据结构为什么以长度44为embstr和raw实现的分界线?
  • 【大模型实战篇】部署GPT-OSS-120B踩得坑(vllm / ollama等推理框架)