课后作业(异常捕获)

news/2025/11/5 19:27:03/文章来源:https://www.cnblogs.com/xht1/p/19194461

java中的异常捕获语句
Try{
//可能发生运行错误的代码;
}
catch(异常类型 异常对象引用){
//用于处理异常的代码
}
finally{
//用于“善后” 的代码
}
将可能发生异常的代码放进try语句中,程序检测到发生异常时,会抛出一个异常对象,程序会由try语句跳转到catch语句,由catch语句捕捉异常并处理错误,无论是否有异常,finally中的语句都会被执行。
例1
public class CatchWho {
public static void main(String[] args) {
try {
try {
throw new ArrayIndexOutOfBoundsException();
}
catch(ArrayIndexOutOfBoundsException e) {
System.out.println( "ArrayIndexOutOfBoundsException" + "/内层try-catch");
}

        throw new ArithmeticException();}catch(ArithmeticException e) {System.out.println("发生ArithmeticException");}catch(ArrayIndexOutOfBoundsException e) {System.out.println(  "ArrayIndexOutOfBoundsException" + "/外层try-catch");}
}

}
这是一个嵌套的异常处理,在内层当中,先抛出了一个数组越界异常,然后被内层的catch捕捉,输出ArrayIndexOutOfBoundsException" + "/内层try-catch
然后程序继续抛出一个算术异常,此时进入外层,内层抛出的算数异常被外层第一个catch捕捉,输出发生ArithmeticException,而外层第二个catch不会捕捉任何异常
例2
public class CatchWho {
public static void main(String[] args) {
try {
try {
throw new ArrayIndexOutOfBoundsException();
}
catch(ArithmeticException e) {
System.out.println( "ArrayIndexOutOfBoundsException" + "/内层try-catch");
}
throw new ArithmeticException();
}
catch(ArithmeticException e) {
System.out.println("发生ArithmeticException");
}
catch(ArrayIndexOutOfBoundsException e) {
System.out.println( "ArrayIndexOutOfBoundsException" + "/外层try-catch");
}
}
}
在该嵌套的异常处理中,内层抛出了一个数组越界异常,内层的catch捕捉的是算术异常,二者不匹配,所以内层抛出的异常会传递到外层,此时内层剩余代码不会被执行,所以不会再抛出一个算术异常,传递到外层的数组越界异常被外层第二个catch捕捉,输出ArrayIndexOutOfBoundsException" + "/外层try-catch
例3

public class SystemExitAndFinally {

public static void main(String[] args)
{try{System.out.println("in main");throw new Exception("Exception is thrown in main");//System.exit(0);}catch(Exception e){System.out.println(e.getMessage());// System.exit(0);}finally{System.out.println("in finally");}}

}
这段代码说明了finally一定会执行是有例外的,如果去掉第二处注释,程序捕捉异常之后执行System.exit(0);,程序会直接结束,不执行finally语句,但如果去掉第一处注释,由于抛出了异常,程序直接跳转到catch语句,所以不会执行try后面的System.exit(0);,因此仍然会执行finally语句

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/957083.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

UEFI 启动的各阶段介绍 - 阿源

UEFI启动的七个阶段介绍系统固件开发学习系列: 一、EDKII环境搭建 & QEMU虚拟机双平台安装 二、EDKII工程结构介绍目录 一、整体概念 二、SEC 安全初始化阶段 三、PEI 预 EFI 初始化阶段 四、DXE—驱动执行环境阶…

CSP 2025 游记总结

T1 大约开考 40 min 后做出,有点慢了。 反悔贪心,按照每个人最大的满意度与次大值的差为第一关键字,次大值与最小值的差为第二关键字从大到小排序,然后挨个取就行了。 期望得分:\(100\)点击查看代码 #include<…

在AI技术快速实现创意的时代,挖掘用户真实需求成为制胜关键——某知名macOS防睡眠工具需求洞察

本文基于某知名macOS防睡眠工具的文档和用户反馈分析,揭示了用户在使用过程中提出的核心需求,包括连接电源自动激活、外接显示器检测优化、图标显示改进等关键功能改进建议,为产品迭代提供重要参考。a.内容描述核心…

2025 年 11 月重型货架厂家推荐排行榜,模具/高位/阁楼/平台/仓储/冷库/定制/立体库/智能/窄巷道/钢平台/抽屉/悬臂/穿梭车/搬运机器人/天金冈货架公司精选

2025年11月重型货架厂家推荐排行榜:模具/高位/阁楼/平台/仓储/冷库/定制/立体库/智能/窄巷道/钢平台/抽屉/悬臂/穿梭车/搬运机器人/天金冈货架公司精选 一、行业背景与发展趋势 随着现代物流体系的不断完善和智能制造…

2025 年 11 月小规模财税合规服务商推荐榜:专业记账、税务申报与风险规避一站式解决方案

2025 年 11 月小规模财税合规服务商推荐榜:专业记账、税务申报与风险规避一站式解决方案 行业背景与发展趋势 随着数字经济时代的深入发展,小规模企业的财税合规需求呈现出专业化、精细化、智能化的新特征。在税收监…

易路全球AI峰会Day1收官,引领AI HR新未来

11月5日下午,由易路主办的「人机重塑,共建XIN生态」全球企业AI云端数字峰会暨2025企业AI HR创新应用案例颁奖盛典,震撼开讲。 作为人力资源领域的首场数字人云端峰会,本届峰会聚焦AI前沿视角与技术创新落地,为期3…

2025 年 11 月石墨坩埚加工设备,石墨电极与接头加工设备厂家推荐排行榜,专业实力与高效生产口碑之选

2025 年 11 月石墨坩埚加工设备,石墨电极与接头加工设备厂家推荐排行榜,专业实力与高效生产口碑之选 石墨材料加工设备作为现代工业制造的关键环节,在冶金、新能源、半导体等领域发挥着不可替代的作用。随着技术进步…

P1668 [USACO04DEC] Cleaning Shifts S 题解

P1668 [USACO04DEC] Cleaning Shifts S 题解P1668 [USACO04DEC] Cleaning Shifts S 题解 题目传送门 我的博客 前言 这道题有 \(3\) 种方法。本文将依次进行讲解。 做法 \(1\):贪心。笔者一开始的思路就是这个。 做法…

P8328 [COCI 2021/2022 #5] Usmjeravanje

发现就是两条链中间确定一些方向,使得强连通分量数最少(有向图的最大不到达子集大小等同于这个)。 显然你就是想让一些交叉的边尽可能多,随便排下序贪心即可。

关于浏览器访问http://协议自动跳转至https://的处理

清除单个网站的 HSTS 记录(长期生效)在 Chrome 地址栏输入 chrome://net-internals/#hsts,按回车进入 HSTS 配置页。 在「Delete domain security policies」(删除域名安全策略)下(不带http://)输入你想访问的 …

2025.11.5

今天学了数论,然后博客等到周末去打一下

开篇:今日不上班,出来写文章

从上家公司离职已经有段时间了。离职后先在原来的工作城市待了段时间,之后去重庆旅游了一阵,现在回到这座城市重新找工作,每天的日常就是:睁眼刷招聘软件,改简历,偶尔面试,剩下的时间就发呆。 那家待了4年的公司…

NPU(神经网络处理器) - ENGINEER

NPU(神经网络处理器)NPU(神经网络处理器):AI时代的专用计算引擎 一、NPU的核心定义 NPU(Neural Processing Unit,神经网络处理器)是专为人工智能(AI)与机器学习(ML)任务设计的专用硬件芯片,其核心目标是通…

天气预报--查看相应

右键左侧 “测试计划” → 添加 → Threads(Users) → 线程组 2. 添加 HTTP 请求(用于查询天气预报) 右键 “线程组” → 添加 → 取样器 → HTTP 请求。 在 HTTP 请求面板配置: 服务器名称或 IP:API 接口的域名(…

NOIP模拟赛2

T2:游戏(game) 假设总共有 \(n\) 个点,因为A要先选,所以他可以选 \((n+1)/2\) 个点,我们设其为 \(len\) ,因为环太难搞了,我们把长度翻个倍,让它成一个链再处理。如上图,假如A第一个点选A点,那么明显那 \(4\) …

LIN总线-帧的结构

1、LIN是什么LIN是Local Interconnect Network 的缩写,是基于通用异步串口收发器/串行通信协议,可用于汽车、家电、办公设备等多种领域。LIN是一种低成本的串行总线,其一般不会单独存在,通过CAN-LIN网关,经常与上…

[Record] 杂题选做

感觉很多题过了就跑很不够……不能再颓了! P13866 [SWERC 2020] Daisys Mazes 很有趣的一道题。 比较傻地对栈序列 dp,显然状态数量是 NP 的。考虑如何减少状态。 假设一种简单情形,也即在出发点和结束点栈都为空,…

汉字识别代码

import os import random import numpy as np import matplotlib.pyplot as plt from PIL import Image, ImageDraw, ImageFont import torch import torch.nn as nn import torch.optim as optim from torch.utils.da…

函数的描述符特性与绑定方法的生成机制

函数的描述符特性与绑定方法的生成机制 一、为什么把两件事放在同一篇讲 在 Python 中,「函数」(function)本身是一种非数据描述符(non-data descriptor)。 解释器把函数放进类属性槽里时,正是靠描述符协议把它*…