- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
在try-catch块后加入finally块,可以确保无论是否发生异常,finally块中的代码总能被执行 try 块 finally 块 catch 块 无异常 有异常 try-catch-finally 四、异常处理 public class Test4 { public static void main(String[] args) { try { Scanner in = new Scanner(System.in); System.out.print(请输入被除数:); int num1 = in.nextInt(); System.out.print(请输入除数:); int num2 = in.nextInt(); System.out.println(String.format(%d / %d = %d, num1, num2, num1/ num2)); } catch (Exception e) { System.err.println(“出现错误:被除数和除数必须是整数, +除数不能为零。); System.out.println(e.getMessage()); } finally { System.out.println(感谢使用本程序!); } } } try-catch-finally 输入:200 40 输入:200 0 第一种情况: 无异常 第二种情况: 有异常 演示示例:使用try-catch-finally处理异常 四、异常处理 finally块中语句不执行的唯一情况 异常处理代码中执行System.exit(1)退出Java虚拟机 try-catch-finally public class Test5 { public static void main(String[] args) { try { Scanner in = new Scanner(System.in); System.out.print(请输入被除数:); int num1 = in.nextInt(); System.out.print(请输入除数:); int num2 = in.nextInt(); System.out.println(String.format(%d / %d = %d, num1, num2, num1/ num2)); } catch (Exception e) { System.err.println(出现错误:被除数和除数必须是整数, + 除数不能为零); System.exit(1); // finally语句块不执行的唯一情况 } finally { System.out.println(感谢使用本程序!); } } } 四、异常处理 public void method(){ try { // 代码段 // 产生异常(异常类型2) } catch (异常类型1 ex) { // 对异常进行处理的代码段 } catch (异常类型2 ex) { // 对异常进行处理的代码段 } catch (异常类型3 ex) { // 对异常进行处理的代码段 } // 代码段 } 一段代码可能会引发多种类型的异常 当引发异常时,会按顺序来查看每个 catch 语句,并执行第一个与异常类型匹配的catch语句 执行其中一条 catch 语句后,其后 catch 语句将被忽略 try 与异常类型1不匹配 try-catch 块后的代码段 发生异常 产生异常对象 catch 与异常类型2匹配 catch catch 程序继续执行 进入catch块 多重catch块 四、异常处理 多重catch块 2-2 public class Test6 { public static void main(String[] args) { try { Scanner in = new Scanner(System.in); System.out.print(请输入被除数:); int num1 = in.nextInt(); System.out.print(请输入除数:); int num2 = in.nextInt(); System.out.println(String.format(%d / %d = %d, num1, num2, num1/ num2)); } c
您可能关注的文档
- 《再塑生命的人》课件.pptx
- 《再塑生命的人》课件【39页】.ppt
- 《再塑生命的人》课件定稿.ppt
- 《再塑生命的人》优秀课件.ppt
- 《张衡传》课件(40页).ppt
- 《张衡传》优秀课件.ppt
- 《珍珠鸟》优秀课件.ppt
- 《知之为知之-不知为不知》课件实用版.ppt
- 《植树的牧羊人》公开课一等奖课件.pptx
- 《质量守恒定律》课件.ppt
- 山东省潍坊市第一中学2012届高三阶段测试 基本能力试题.docx
- 山东省济宁市曲阜师大附中2010届九年级历史上学期期中质量检测试题人教版.docx
- 山东省济宁市2011届高三教学质量监测历史试题.docx
- 山东省枣庄市薛城实验中学2015届高三上学期期末历史试题.docx
- 山东省济宁市微山县第一中学2015-2016学年高二语文入学检测考试试题.docx
- 山东省淄博市张店区湖田中学2014-2015学年七年级英语下学期期中学业水平检测试题.docx
- 云南省玉溪市峨山彝族自治县一中2025-2026学年高三上学期期中考试物理-学生用卷.pdf
- 广东省江门市新会区创新教育集团2025-2026学年部编版九年级历史上学期期中综合素养评价(含答案).pdf
- 长沙市岳麓实验高三期中考试历史-学生用卷.pdf
- 四川省宜宾市翠屏区2025--2026学年八年级上学期期中历史试题(含答案).pdf
原创力文档


文档评论(0)