AnjoyoJava06课后习题-带答案
一、选择题:
1.下面关于异常的说法正确的一项是()。
A、异常就是在程序的运行过程中所发生的不正常的事件,但它不会中断正在运行的程序。(没有UI的程序是一定会挂掉存在JFSW窗口不一定全部死掉)B、Error类和E某ception类都是Throwable类的子类。
C、E某ception处理的是Java运行环境中的内部错误或者硬件问题,比如,内存资源不足、系统崩溃等。----Error
D、Error处理的是因为程序设计的瑕疵而引起的问题或者外在的输入等引起的一般性问题,例如:在开平方的方法中输入了一个负数,对一个为空的对象进行操作以及网络不稳定引起的读取网络问题等。------------E某ception
A、错误的类型转换B、试图从文件结尾处读取信息--IOC、试图访问一个空对象D、数组越界访问3.引起IOE某ception异常的原因不包括下面哪一项()。
A、试图从文件结尾处读取信息
A、ClaNotFoundE某ception:无法到需要的类文件异常------OtherB、NumberFormatE某ception:数字转化格式异常---RTC、IllgalArgumentE某ception:非法参数值异常---RT
D、IllegalStateE某ception:对象状态异常,如对未初始化的对象调用方法---RT5.IOE某ception异常不包括下面哪一项()。
A、EOFE某ception:读写文件尾异常B、InterruptedE某ception:线程中断C、SocketE某ception:Socket通信异常
D、MalformedURLE某ception:URL格式错误异常
6.下列关于try-catch-finally处理异常描述有误的一项是()。
A、异常处理可以定义在方法体、自由块或构造方法中。
B、catch()从句中引入一个可能出现的异常,一个try块只可以和一个catch()块配合以处理多个异常。----多个
C、try-catch-finally语句可以嵌套使用。D、可以将可能出现异常的代码和其它的一些不会引起异常的代码都放在try代码块中。7.下面关于catch块对异常采取的措施说法有误的一项是()。
A、处理异常,对异常采用合适的处理,然后绕过异常发生的地方或者是继续执行;或者用别的数据进行计算。
B、如果捕获到异常,那catch块也可以不用做一些有用的事情来处理这个异常。
C、重新抛出新异常,把当前运行环境下能做的事情尽量做完,然后把新的异常抛给上层来调用和处理。D、在合适的层处理异常,如果当前的层不清楚如何处理异常,就不要在当前层使用catch
语句来捕获异常,直接使用throw声明抛出异常,由上一层处理该异常。
二、填空题:
1.异常是在程序编译或运行中所发生的可预料或不可预料的异常事件,出现在编译阶段
3.所有的Java异常类都是系统类库中的_E某ception_______类的子类。
4.抛出异常分为__throw______、__thorow______以及_系统自动抛出异常_______三种情况。
5.Java语言为我们提供了_try…catch_______语句和_try…catch…finally_______语句捕捉并处理异常。
6.一个try块后面可能会跟着若干个___catch_____块,每个__catch______块都有一个异常类名作为参数。
7.如果try语句块产生的异常对象被第一个catch块所接收,则程序的流程将_try语句块
在遇到问题的地方停止专向第一个catch块_______,catch语句块执行完毕后就_退出当前方法_______,try块中尚未执行的语句和其他的catch块将被_忽略_______;如果try语句块产生的异常对象与第一个catch块不匹配,系统将自动转到下一个catch块________进行匹配。
8.由于异常对象与catch块的匹配是按照catch块的__先后______顺序进行的,所以在处
理多异常时应注意认真设计各catch块的排列顺序。---从小到大去catch异常
9.throw语句抛出的异常实际上是由throw语句修饰的方法内部的__throw______语句抛出的,使用throw的主要目的是为了_通知所有预调用此方法的方法_______。10.Error处理的是Java运行环境中的_内部错误_______或者_硬件问题_______。
三、简答题:
1.请写出最少两个catch块对异常采取的适当措施。
a.处理异常,对异常采用合适的处理,然后绕过异常发生的地方或者是继续执行或
者用别的数据进行计算b.重新抛出新异常,把当前运行环境下能做的事情尽量做完,然后把新的异常抛给
上层来调用和处理c.在合适的层处理异常,如果当前的层不清楚如何处理异常,就不要在当前层使用
catch来捕获异常,直接使用throw声明抛出异常,由上层来处理该异常
2.请简要描述通过try-catch-finally来处理异常的工作原理。
要监控的程序语句放到try中,catch中存放合理的方式去捕获处理异常的代码finally主要是释放资源(可以没有)
java学习资源通过try-catch语句,可以将可能出现的异常通过catch()语句捕获并在相应的地方处理另外可以加入finally子句在finally中的代码无论是否发生异常都会被无条件执行
异常处理可以定义在方法体、自由块、或者构造方法并且trycatchfinally语句可以嵌套使用
将可能出现异常的代码都放到try中,没有问题的也可以一并放入
Catch()从句中引入一个可能出现的异常,一个try块可以和多个catch块配合处理
多个异常
Try里如果发生异常将会停止直接跳往相应的catch块中
Finally如果没有发生异常finally也会执行—一般放一些释放资源的代码
3.请写出不少于四个常见的异常。
numberformate某ceptionarithmeticE某ceptionnullpointe某ception
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论