《面向对象程序设计》第10章在线测试
剩余时间:
59:55
答题须知:1、本卷满分20分。
2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。
3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。
第一题、单项选择题(每题1分,5道题共5分)
1、throw后面的表达式不可以是(D )
A、常量 B、变量
C、对象 D、数组
2、关于没有被捕捉的异常正确的说法是(A/C )
A、在catch块中没有处理的异常 B、未被捕捉的异常必然导致系统崩溃
C、如果一个异常没有被捕捉到,将调用terminate()函数终止程序运行 D、忽略它
3、关于异常对象的说法正确的是( A)
A、异常对象需要先建立,再抛出 B、以传值方式传递异常对象时,抛出的是局部临时对象
C、以引用方式传递异常对象时,抛出的是局部静态对象 D、以指针方式传递异常对象时,抛出的是全局临时对象
4、关于try, throw和catch使用的说明中,错误的是(D )
A、throw必须在try块中 B、每一个try块的后面一定要跟着catch块
C、程序中catch块可以有多个 D、throw抛出的异常与距它最近的cach匹配
5、为保证程序中的全局变量不与开发商提供的全局变量重名,可以采取的措施是(C )
A、查阅手册,不起同样的名字 B、引入命名空间
C、避开不用 D、让开发商改名
第二题、多项选择题(每题2分,5道题共10分)
1、下面与异常处理相关的关键字有(CD )
A、Try
B、Catch
C、try
D、catch
2、下面与异常处理相关的关键字有(BC )
A、Throw
B、throw
C、try
D、Try
3、throw 表达式中的表达式的含义(BD/ (不知道正确答案是什么))
A、表达式表示异常的值
B、表达式与return语句的运算数相似
C、表达式表示异常的类型
D、表达式的值可以用来区别不同的异常
4、catch子句的说法正确的是( AB)
A、catch子句后的复合语句是异常处理程序
B、catch子句捕获throw表达式抛出的异常
C、catch子句的异常类型说明只能是类型,不能是数值
D、catch子句的异常类型不能是自定义类
5、关于catch(…)语句的说法正确的是(AC )
A、catch(…)语句可以捕获任何异常
B、catch(…)语句可以放在catch子句的任何位置
C、catch(…)语句必须放在catch子句的最后
D、catch(…)语句捕获空的异常
第三题、判断题(每题1分,5道题共5分)
1、异常如果没有要求程序立即进行处理,将会引起程序错误甚至崩溃的现象。
正确 错误T
2、抛出异常的模块并不负责异常的处理,该异常的处理可以程序中的任何位置。
正确 错误F
3、异常信号传递方式有三种:传值方式、引用方式和指针方式。
正确 错误T
4、命名空间,就是在程序的不同的模块中使用相同的名字表示不同的事物(实体)。目的是提供一种机制,使大程序的各个部分中因出现重名而导致冲突的可能性降到最低。
正确 错误T
5、catch处理程序的出现次序无关紧要。
正确 错误F
网友评论