- 2
- 0
- 约5.55千字
- 约 27页
- 2016-09-11 发布于河南
- 举报
8 异常 Java
目 标 当完成本章后,你应该能够: 理解异常与错误 理解异常的分类 使用关键字try、catch及finally来捕获和处理异常 创建自定义异常 理解方法覆盖时对抛出异常的要求 异常 异常是一种被许多编程语言使用的用于描述当发生未预料的事件时如何处理的机制。通常,未预料的事件是某种类型的错误,例如使用不可接受的参数调用方法时,或是网络连接失败时,或是打开不存在的文件时。 异常分类 Java编程语言提供两大类异常,受检(checked)和非受检(unchecked)异常。 受检异常是在程序中程序员预期可以处理,从外部条件产生的,在运行的程序中容易发生的异常。例如,找不到文件,网络断线等。 非受检异常可能由程序缺陷,或情况过于复杂以至于程序无法正确处理等原因引起。所谓非受检是因为不需要对发生的进行检查或处理。可能由于缺陷情况导致的异常称为运行时异常(runtime exception)。例如,试图访问超出数组末端的范围。 Exception 与 Error Exception类是表示受检和非受检异常的基类。与终止程序相比,如果编写处理异常的代码并继续执行会更好一些。 Error 类是用于程序无法试图恢复的、非受检的、严重的错误的基类。在大多数情况下,当遇到这类错误时,应该终止程序,尽管要尽量保存用户的工作。 RuntimeException 类是用于由程序缺陷造成的非受检异常的基类。在大多数情况下,当此种异常发生时应该终止程序,同样要尽量保存用户的工作是一个非常不错的想法。 异常示例 1 public class AddArguments { 2 public static void main(String args[]) { 3 int sum = 0; 4 for ( int i = 0; i args.length; i++ ) { 5 sum += Integer.parseInt(args[i]); 6 } 7 System.out.println(Sum = + sum); 8 } 9 } 运行结果 如果任何一个参数不是整数,此程序就会失败: java AddArguments 1 two 3.0 4 Exception in thread main java.lang.NumberFormatException: For input string: twoat java.lang.NumberFormatException.forInputString(NumberFormatE xception.java:48) at java.lang.Integer.parseInt(Integer.java:447) at java.lang.Integer.parseInt(Integer.java:497) at AddArguments.main(AddArguments.java:5) 异常的捕获与处理 Java 编程语言提供了判定异常被抛出和如何从异常中恢复的机制,使用关键字try和catch来实现。 程序8-2展示了修改过的使用try-catch语句以捕获异常的AddArguments 程序,在此例中的异常为java.lang.NumberFormatException。 捕获异常 1 public class AddArguments2 { 2 public static void main(String args[]) { 3 try { 4 int sum = 0; 5 for ( int i = 0; i args.length; i++ ) { 6 sum += Integer.parseInt(args[i]); 7 } 8 System.out.println(Sum = + sum); 9 } catch (NumberFormatException nfe) { 10 System.err.println(One of the command-line 11 + arguments is not an integer.); 12 } 13 } 14 } 捕获异常 java AddArguments2 1 two 3.0 4 One of the command-line arguments is not an integer. 多个catch子句 try { // 抛出一个或多个异常的代码 } catch (MyExceptio
您可能关注的文档
- 2010中考词组new.doc
- 2010届高考一轮复习精编教学案:必修1_Unit2_English_around_the_world(人教新课标).doc
- 2010卫生c.doc
- 2010年全国职称英语等级考试卫生类 C级 阅读文章译文.doc
- 2010年普通高等学校招生全国统一考试西工大附中第二次适应性训练.doc
- 2010年新人教英语.doc
- 2010年职称英语考试卫生类(C级)(京华网校提供).doc
- 2010英语福建版40天冲刺语词汇检测练习.doc
- 2010高三第一轮复习英语模拟试卷.doc
- 2011_4_7_9_20_32_171全等三角形.doc
- 2026年闽南理工学院单招职业适应性考试题库精编答案详解.docx
- 2026年阳江职业技术学院单招职业技能考试题库及答案详解(网校专用).docx
- 2026年长沙环境保护职业技术学院单招职业倾向性考试题库及答案详解(最新).docx
- 2026年黑龙江省大庆市单招职业倾向性考试题库及答案详解(网校专用).docx
- 2026年长春金融高等专科学校单招职业技能考试题库及1套完整答案详解.docx
- 2026年青岛工程职业学院单招职业技能考试题库及答案详解参考.docx
- 2026年陕西青年职业学院单招职业适应性考试题库及答案详解(历年真题).docx
- 2026年闽西职业技术学院单招职业技能考试题库带答案详解.docx
- 2026年阜新高等专科学校单招职业技能考试题库精选答案详解.docx
- 2026年鹤岗师范高等专科学校单招职业适应性考试题库附答案详解(名师推荐).docx
最近下载
- 人美版美术一年级下册《第一单元 春天的故事》大单元教学设计2026.docx VIP
- 公转私借款合同范本.docx VIP
- IATF16949:2016中文版本含ISO9001全文依据2025年11月SI更新(包括SI1-30).pdf
- 4.成人斯蒂尔病诊疗指南2025版.pptx
- 第一单元《春天的故事》大单元(教学设计)人美版2025美术一年级下册.docx VIP
- ISO42001-2023人工智能管理体系程序文件.docx VIP
- 一种火炬排放系统密封器.pdf VIP
- 提高住院患者大小便标本送检率PDCA.pptx VIP
- DB61_T 2093.5-2025 猕猴桃生产第5部分:花粉生产.docx VIP
- 无锡市轨道交通工程临时用电监理实施细则.doc VIP
原创力文档

文档评论(0)