- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
共21页 程序设计 第5章 异常处理与单元测试 学习目标 理解异常的概念。 掌握异常处理的方法。 理解和掌握自定义异常。 理解单元测试与软件质量的关系。 掌握单元测试。 会写单元测试用例。 重难点 重点 异常的概念。 捕获异常。 声明抛出异常。 自定义异常。 单元测试的概念。 编写测试用例。 测试用例的执行和记录。 难点 捕获异常。 声明抛出异常。 自定义异常。 编写测试用例。 目录 5.1 异常概述 异常是程序中的不正常情况 严重的——称为错误 无法处理 不需处理 程序将中止 一般的——称为异常 应该处理 否则程序中止 常见的异常 下述代码将产生一个异常 因为除数为0,产生的异常名为算术异常ArithmeticException 其它常见的异常有 空指针异常NullPointerException 空指针异常非常常见,一般是引用数据类型没有正确初始化或被赋空值而引起的。 数组下标越界异常ArrayIndexOutOfBoundsException 数组操作时可能出现 类型转换异常ClassCastException 不正确的类型转换 异常的分类 三大类 错误是不需处理,也无法处理的 运行时异常是可以处理,也可以不处理的 非运行时异常是必须处理的 出现异常而没有处理,程序将中止 5.2 异常处理 异常的产生 虚拟机生成 由某些类的实例生成 在程序中由throw语句生成 异常的处理 捕获异常——积极的异常处理机制 当产生异常时,JVM将异常对象交给一段称为捕获(catch)异常的代码进行处理 声明抛出异常——消极的异常处理机制 如果一个方法不知道应该如何处理所出现的异常,则可在方法定义时,声明抛出(throws)异常 捕获异常 捕获异常是通过try-catch-finally语句实现的: 例如: 实例 捕获三种异常:算术异常、下标越界异常和普通异常 声明抛出异常 声明抛出异常是不捕获异常,将可能出现的异常交给调用的方法来处理。格式是: 例如: 实例 例中readInt()方法不捕获异常,而是交给上一级处理 5.3 自定义异常 5.3.1 自定义异常类 是Throwable类的直接或间接子类。 通常是声明为Ecxeption类的子类: 例如 在实际的软件设计中通常会创建一组自定义异常类,形成一个有继承关系的层次结构。 5.3.2 抛出异常 自定义异常的使用是通过抛出(throw)异常实现的: 然后在代码的其它部分捕获异常和声明抛出异常 目的是将异常通过方法调用链将异常传递到能够处理异常的一级 5.3.3 自定义异常类的使用 自定义异常类的使用分三个步骤: ①设计并声明自定义异常类。 ②在出现异常处抛出异常,该方法还要声明抛出异常。 ③在处理异常处捕获并处理异常,或再次声明抛出异常。 自定义异常之后,将其作为普通的异常对待即可 5.4 单元测试 测试的目的 提高软件代码的质量,提高软件的可靠性 最简单的测试 System.out.print()语句 复杂的测试 白盒测试 黑盒测试 集成测试等 单元测试是白盒测试的一种 5.4.1 JUnit介绍 单元(Unit) 是指一个可独立进行的工作,独立进行指的是这个工作不受前一次或接下来的工作的结果影响 一个单元可以是一个方法,也可以是一组方法。 Java单元测试(JUnit) 为Java程序开发过程中实现单元测试提供的一种框架(工具) JUnit框架的二个基本组成部分是: Test Case(测试用例) 为一个测试目标而编写的一组测试 Test Suite(测试用例集) 针对一个功能的所有测试用例的集合 5.4.2 Test Case 单元测试的过程分为 设计测试用例 在设计阶段进行 编写测试用例代码 在代码编写阶段(之前或同时) 执行测试用例 代码开发过程中 代码修改后。 模块集成过程中。 项目完成前。 记录并撰写测试报告 实例 断言成功表示测试成功 本章复习 本章学习了下列知识 Java语言的异常处理机制 异常的概念和类型 捕获异常和声明抛出异常 自定义异常的声明与使用 单元测试 测试的重要性 编写单元测试 单元测试的实施 Java程序设计与实训 幻灯片 *,共32页 Java程序设计与实训 幻灯片 *,共37页 在线教务辅导网: 更多课程配套课件资源请访问在线教务辅导网 5.1 异常概述 5.2 异常处理 5.3 自定义异常 5.4 单元测试 public class ArithmeticExceptionDemo { public static void main(String[] args) { int a = 0; int b = 8 / a
您可能关注的文档
- Java Web设计实用教程——基于Eclipse环境的应用开发 孔昊 chap7 Hibernate实现数据持久化新.ppt
- Java Web应用开发技术 任文娟 第1章 Java Web应用概述新.ppt
- Java Web应用开发技术 任文娟 第2章 Servlet技术新.ppt
- Java Web应用开发技术 任文娟 第4章 Java Web编程中数据库技术的使用新.ppt
- Java Web应用开发技术 任文娟 第5章 MVC架构模式新.ppt
- Java Web应用开发技术与案例教程 张继军 第1章_Java_Web应用开发技术新.ppt
- Java Web应用开发技术与案例教程 张继军 第2章_静态网页开发技术新.ppt
- Java Web应用开发技术与案例教程 张继军 第5章_JavaBean技术新.ppt
- Java Web应用开发技术与案例教程 张继军 第6章_Servlet技术新.ppt
- Java Web应用开发技术与案例教程 张继军 第7章_Java_Web常用开发模式新.ppt
- Java程序设计与实训 黄能耿 java-06新.ppt
- Java程序设计与实训 黄能耿 java-08新.ppt
- Java程序设计与应用开发 孙燮华 第3章 数组与字符串新.ppt
- Java程序设计与应用开发 孙燮华 第6章 布局管理器新.ppt
- Java程序设计与应用开发 孙燮华 第7章 Applet编程新.ppt
- Java程序设计与应用开发 孙燮华 第8章 图形GUI设计新.ppt
- Java程序设计与应用开发 孙燮华 第9章 多线程新.ppt
- Java程序设计与应用开发 孙燮华 第10章 JDBC与数据库新.ppt
- Java程序设计与应用开发 孙燮华 第12章 动画设计新.ppt
- Java程序设计与应用开发 孙燮华 第13章 学生信息管理系统设计新.ppt
文档评论(0)