2022年Java程序设计案例教程周怡、张英主编习题参考答案 .pdf
-
资源ID:39900681
资源大小:156.28KB
全文页数:7页
- 资源格式: PDF
下载积分:4.3金币
快捷下载
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
2022年Java程序设计案例教程周怡、张英主编习题参考答案 .pdf
1 第 7 章包与异常处理习题参考答案:一、判断题在编程中,可以不用进行异常的处理,因为有时发生的异常并不会影响程序的正常运行_ _。2异常处理一般可用try catch 语句进行处理的_ _。3try catch 语句不能进行嵌套使用_。4如果觉得系统给出的异常类不够使用,也可能定义自己的异常类,自己定义的异常类一般继承Exception 类(或其子类)_。5try catch finally语句中,三个关键字必须同时使用,才能达到异常处理的效果_。6使用import 导入一包时,可以将这个包的子包也一并导入_。二、选择题异常是指_D_。.程序中的语法错误.程序的编译错误.程序执行过程中遇到的事先没有预料到的情况.程序执行过程中遇到的事先没有预料到的情况,或程序事先定义好的可能出现的意外情况如果一个程序中有多个catch 语句,程序会_C_。.每个 catch 都会执行一次.把每个符合条件的catch 语句都执行一次.找到适合的异常类型后就不再执行其它catch 语句.找到适合的异常类型后还要执行其它catch 语句下列关于finally 说法正确的是_C_。.finally语句应该放在所有catch 语句的前面.finally语句应该放在所有catch 语句的后面.无论程序是否找到合适的catch 匹配,都会去执行finally.如果程序在前面找到了多个适合的catch 匹配,就不再执行finally语句了4在一个方法内抛出异常时,应该使用下列哪个子句_A_。.throw.catch.finally.throws 5下列描述中,错误的一个是_B_。.异常抛出点后的代码在抛出异常后不再执行名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 7 页 -2.一个 try 代码段后只能跟有一个catch 代码段.try 一般要和catch 联合使用.在编写程序过程中,要考虑对异常的处理6一个catch 语句段一定要和下列哪一项配合使用_A_。.try 语句段.finally语句段.throw.throws 三、填空题(答案已在书中给出)Throwable 类派生出Error 和Exception 两个分支。创建包和导入包的关键字分别是package 和import。Java 异常处理的个关键字是try、catch、finally、throw、throws。4自定义的异常类必须为Exception 的子类。5一个try 代码段后面必须跟着若干个catch 代码段或者一个finally 代码段。6当在一个方法的代码中抛出一个检测异常时,该异常或被方法中的trycatch 结构捕获,或者在方法的throws 中声明。7当异常已经被定义时,必须通过try catch finally 语句来处理它。8Throw 的作用是抛出异常。9Throws 的作用是声明方法可能抛出的异常类型。四、简答题(答案要点):()Java 中包的含义是什么?怎样定义一个包和引入一个包?答:包的实质就是文件夹,是为了方便类和接口的管理;包的创建用关键字package,包的导入用import。()Java 中异常处理的原理是什么?用到哪些关键字?分别说说这些关键字的作用。答:Java 的异常是面向对象的。当出现异常情况时,就会产生一个Exception 对象,并放到异常的成员方法里。在一个方法的运行过程中,如果发生了异常,则这个方法生成代表该异常的一个对象,并把它交给运行时系统,运行时系统寻找相应的代码,来处理这一异常。生成异常对象,并把它提交给运行时系统的过程称为抛出(throw)一个异常;运行时系统在方法的调用栈中查找,直到找到包含相应异常处理的方法为止,这一个过程称为捕获(catch)一个异常。一般来说,异常处理会用到个关键字:try,catch,finally,throws,throw try catch 或try catchfinally结构形式构成异常处理的基本语法。throws一般在方法的定义处使用,它的作用是可以不在此方法内部处理异常,而是将异常抛给它的调用者。名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 7 页 -3 throw 一般在方法的内部使用,可用于抛出一个系统异常或自定义异常。五、编程题:(参考答案)()编写一个Person 类,让它位于包xinxi 之中,编写一个类Student,让它位于包 xinxi.gongcheng包中。package xinxi;class Person String name;void say();(在另一文件中)package xinxi.gongcheng;class Student String name;Int age;void study()(2)当除数为0 时,可能会发生异常,编程处理这种异常。public class Zero public static void main(String args)try/try 语句块中是可能发生异常的语句System.out.println(1/0);/除数为,可能发生异常 catch(ArithmeticException e)/catch 语句System.out.println(程序出算术异常啦);System.out.println(e);/输出异常对象的信息 finally/如果前面没有exit(0)语句,finally总会执行System.out.println(finally执行了!);System.out.println(程序执行完啦!);/该语句测试程序是否执行完成 (3)当数组下标越界时,可能会在程序的执行的过程中出现问题,编程查看这种类型的异常,并合理进行处理。public class YueJie public static void main(String args)名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 7 页 -4 try/try 语句块中是可能发生异常的语句System.out.println(args0);/可能发生异常,此处以args 数组为例;catch(Exception e)/catch 语句System.out.println(数组下标越界异常啦);System.out.println(e);/输出异常对象的信息 finally/如果前面没有exit(0)语句,finally总会执行System.out.println(finally执行了!);System.out.println(程序执行完啦!);/该语句测试程序是否执行完成 (4)编写一个自定义的异常类,去处理第2 题出现异常的情况,并且要求当异常发生时,系统给出的提示信息为“请注意,除数不能为0”。class Wrong extends Exception publicWrong()System.out.println(“请注意,除数不能为0”);class A public int div(int i,int j)throws Wrong int z;if(j=0)throw new Wrong();z=i/j;public class Zero public static void main(String args)try/try 语句块中是可能发生异常的语句new A().div(1,0);/除数为,可能发生异常 catch(Wrong e)/catch 语句System.out.println(程序出自定义异常啦);System.out.println(e);/输出自定义异常对象的信息名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 7 页 -5 catch(ArithmeticException e)/catch 语句System.out.println(程序出算术异常啦);System.out.println(e);/输出异常对象的信息 finally/如果前面没有exit(0)语句,finally总会执行System.out.println(finally执行了!);System.out.println(程序执行完啦!);/该语句测试程序是否执行完成 (5)编程模拟医生测量病人体温,测三次,求平均值,如果平均值高于38 度,则出现异常提示。package xiti;class treatment public static void main(String args)float sum=0,tiwen=0;float degree=new float 38,39,39;for(int i=0;i38)try thrownew Wron(体温太高,即时治疗!);catch(Wron w)System.out.println(w);class Wron extends Exception public Wron(String str)super(str);名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 7 页 -6 运行结果为:(6)写程序模拟病人到医院挂号的过程,如果没挂号,则有提示;如果挂了号,也会出现相应的提示(要求用到包和异常的相关知识)。package xiti;class Patient String name;int id;public Patient(String name,int id)this.name=name;this.id=id;/标志性变量,为则为没挂号,为则为内科,为则为外科 public void registration()throws Wrong if(id=0)throw new Wrong(您还没有挂号,请先去挂号!);else if(id=1)throw new Wrong(您挂的号是内科,请去三楼内科看医生!);else if(id=2)throw new Wrong(您挂的号是外科,请去四楼外科看医生!);class Wrong extends Exception publicWrong(String str)super(str);classMyException public static void main(String args)Patient p=new Patient(李四,0);名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 7 页 -7 try p.registration();catch(Wrong w)System.out.println(w);运行结果为:修改 Patient p=new Patient(李四,0);为 Patient p=new Patient(李四,);运行结果为:名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 7 页 -