Java程序设计第五章_第1页
Java程序设计第五章_第2页
Java程序设计第五章_第3页
Java程序设计第五章_第4页
Java程序设计第五章_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第五章异常处理21任务5.1系统异常处理任务5.2自定义异常任务5.1系统异常处理4情境描述123问题分析解决方案知识总结5应用实践5.1.1情境描述Tom采用控制台字符界面成功的实现了用户的输入,常常会因为一不小心将员工工资输入成了非法字符,造成系统崩溃,为了使得系统具备接受非法字符的容错能力,他需要完成以下任务:1)识别Java异常机制2)识别Java系统定义的异常类3)利用trycatch进行异常处理5.1.2问题分析计算机中的数据需要分类存储,用户在输入数据的时候,时常发生用户输入与系统分类不一致,这样的输入就称为非法输入。如果非法输入不控制,可能造成程序的崩溃,这就是系统异常。为了提高系统容错性,计算机语言引进了异常处理机制,通过trycatch语句能够成功的控制系统的异常操作。5.1.3解决方案

1、打开Eclipse开发环境,载入任务5.1项目。2、修改Salary类,添加工资月份。3、打开SalaryAConsole类,为add方法添加系统异常步骤,主要异常来自接收用户输入的非法金额数据,利用trycatch语句继续系统异常步骤及处理。4、修改后的add方法中,try块部分的代码用户捕捉异常,catch部分为处理异常。5、按照以上异常捕捉与处理方法,修改modify方法。5.1.4知识总结1.Java的异常(1)基本概念在Java程序中异常一般由两种原因引起。一种是程序中存在非法操作。另一种是程序员在程序中使用了throw语句引起的异常。(2)常见异常方法用途ArithmeticException算术异常,如除数为0ArrayIndexOutOfBoundsException数组下标出界IllegalArgumentException方法收到非法参数NullPointerException试图访问null对象引用,空指针异常ClassCastException将对象强制转换为不是实例的子类时,类型转换异常ClassNotFoundException不能加载请求的类NumberFormatException字符串转换为相应数据量失败StringIndexOutOfBoundsException程序试图访问字符串中不存在的字符位置RuntimeExceptionjava.lang包中多数异常的基类IOExceptionI/O异常的根类5.1.4知识总结1.Java的异常(3)异常的分类Java语言的异常是通过异常类来表示的,所有的异常类都是直接或间接地继承于Throwable类,可分为Error和Exception两大类。5.1.4知识总结2.异常处理Java语言的异常处理机制有以下两种。(1)捕获异常当产生异常时,JVM将异常对象交给一段称为捕获(catch)异常的代码进行处理,这一过程称为捕获异常。(2)声明抛出异常声明抛出异常不是捕获异常,将可能出现的异常交给调用的方法来处理。声明方法时用throws子句声明将可能抛出哪些异常。格式如下:返回值类型

方法名([参数])throws异常类型{方法体}5.1.5应用实践定义一个100个整数元素的数组,使用随机整数初始化所有100个元素。提示用户输入数组下标,程序显示对应元素的值。如果用户输入的下标越界,则使用异常类的输出信息来提示用户,但程序继续运行。任务5.2自定义异常4情境描述123问题分析解决方案知识总结5应用实践5.2.1情境描述职称的取值只有初级、中级、副高、正高和其他几种取值,然而,目前A类员工的信息接收时,可以接收任意的字符,为了控制有效的职称输入,他需要完成以下的任务:1)自定义异常类2)抛出异常操作3)异常信息捕捉5.2.2问题分析系统定义的异常处理机制能够有效的处理运行时的错误,但是,根据具体的业务逻辑不同,往往用户的输入在很多时候也需要自定义的输入限制,解决这样的操作,可以通过自定义异常及异常抛出、异常处理实现。5.2.3解决方案

1、打开Eclipse。2、新建自定义异常处理类TitlePosException。3、在EmployeeA类的职称信息接收setter方法中进行异常抛出处理。4、在调用EmployeeA的方法中进行异常处理,当前访问方法EmployeeAConsole下的add和modify。5、调用,测试验证输入非法职称。5.2.3解决方案

5.2.4知识总结1.自定义异常类为了创建和使用自定义的异常,就必须先定义一个异常类。可以使用extends关键字定义一个异常类,自定义异常类通常是从Exception类派生而成。其语法格式为:class自定义异常类名extendsException{…}5.2.4知识总结2.抛出异常对于自定义异常,则需要在程序中抛出异常。在方法中,抛出异常对象是通过throw语句实现的。throw语句的语法格式为:thrownew异常类名();5.2.4知识总结3.自定义异常类的使用自定义异常类的使用一般分为三个步骤:(1)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论