Java程序设计

问答题假设下列try-catch语句块中的第2个语句s2产生一个异常,试回答下述问题: ⑴语句s3会执行吗?  ⑵如果catch捕获到异常,语句s4会执行吗? ⑶如果异常未被捕获,语句s4会执行吗?

题目
问答题
假设下列try-catch语句块中的第2个语句s2产生一个异常,试回答下述问题: ⑴语句s3会执行吗?  ⑵如果catch捕获到异常,语句s4会执行吗? ⑶如果异常未被捕获,语句s4会执行吗?
参考答案和解析
正确答案: 若try-catch语句块中的第2个语句s2产生一个异常,⑴语句s3不会执行,⑵如果catch捕获到异常,异常处理后,会继续执行语句s4,⑶如果异常未被捕获,则程序终止运行,语句s4也不会执行。
解析: 暂无解析
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

语句S1、S2和S3按照下面的属性执行:先执行语句S1,再执行语句S2,最后执行语句S3,则这样的执行顺序属于编程中的( )

A.顺序结构

B.选择结构

C.循环结构

D.嵌套结构


正确答案:A

第2题:

基本块的性质中包含哪一条()。

A、只有一个入口语句和一个出口语句

B、有一个入口语句和多个出口语句

C、有多个入口语句和一个出口语句

D、有多个入口语句和多个出口语句


参考答案:A

第3题:

应改为“catch(char*s)”。 (2)应改为“cateh(inti)”。 (3)应改为“catch(…)”。 【解析】本题中第1个标识前的异常抛出语句为“throw("error");”,其中的类型为字符串。所以对应的异常捕捉语句catch中应该符合这个类型,而程序中给出的语句“catch(chars)”是字符型的,所以第1处的语句修改为“catch(char*S)”。第2个标识前的异常抛出语句为“throw((int)0);”,其中的类型为int。对应的异常捕捉语句catch中应该符合这个类型,所以补充catch子句中的类型,否则如果找不到匹配的catch块,系统就会调用一个系统函数,使程序终止运行。即第2处的语句修改为“catch(inti)”。如果在catch子句中没有指定异常信息的类型,那么就用删节号“…”表示它可以捕捉任何类型的异常信息,即修改为“catch(…)”。


正确答案:
使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错误,请改正错误,使程序正常运行,并且要求最后一个catch必须抛出执行的任何异常。
程序异常,输出信息为
error
O
ERROR
注意:不要改动main函数,不能增加或删除行,也不能更改程序的结构,错误的语句在//******error******的下面。
试题程序:
#include<iostream.h)
intmain
{
try
{
throw("error");
}
//********error********
catch(chars)
{
cout<<s<<endl;
}
try
{
throw((int)0);
}
//********error********
catch
{
cout<<i<<endl;
}
try
{
throw(O);
throw("error");
}
//********error********
catch
{
cout<<"ERROR"<<endl;
}
return0;
}

第4题:

在编写异常处理的Java程序中,每个catch语句块都应该与______语句块对应,使得该语句块用来启动Java的异常处理机制。 ( )

A.if—else

B.switch

C.try

D.throw


正确答案:D
解析:一个try块和它的catch子句形成了一个单元。catch子句的范围受限于与之对应的try块所定义的语句。一个catch子句不能捕获另一个try声明所引发的异常(除非是嵌套的try语句情况)。

第5题:

如果catch和finally语句块同时存在,则catch语句块必须位于finally语句块后。()

此题为判断题(对,错)。


正确答案:错误

第6题:

(18)关于多行结构条件语句执行过程,正确的说法是A. 各个条件所对应的语句快中,一定有一个语句块被执行 B. 找到条件为Truede 第一入口,便从此开始执行其后的多有语句块 C.若有多个条件为True,则它们对应的语句块都被执行D.多行选择结构中的语句块,有可能任何一个语句块都被执行


正确答案:D
【解析】If条件语句中条件成立时,就会执行相应的语句块,然后执行End If后面的代码,而不是执行If语句中所有的语句块,所以选项B)错误;在某些情况下,可能有多个条件为True时,只执行第1个为True的条件后面的语句块,因此选项C)错误;多行结构条件语句虽有多个条件,但也有可能一个条件都不成立,从而一个语句块都不执行,所以选项A)错误。

第7题:

下述关于条件语句的描述中错误的是()。

A.if语句中只有一个else子句

B.if语句中可以有多个elseif子句

C.if语句中if体内不能有switch语句

D.if语句的if体中可以是循环语句


正确答案:C

第8题:

关于多行结构条件语句的执行过程,正确的说法是( )。

A.各个条件所对应的语句块中,一定有一个语句块被执行

B.找到条件为True的第一个入口,便从此开始执行其后的所有语句块

C.若有多个条件为True,则它们对应的语句块都被执行

D.多行选择结构中的语句块,有可能任何一个语句块都不被执行


正确答案:D
解析:If条件语句中条件成立时,就会执行相应的语句块,然后执行End If后面的代码,而不是执行If语句中所有的语句块,所以选项B)错误;在某些情况下,可能有多个条件为True时,只执行第1个为True的条件后面的语句块,因此选项C)错误;多行结构条件语句虽有多个条件,但也有可能一个条件都不成立,从而一个语句块都不执行,所以选项A)错误。

第9题:

在块结构条件语句If-Then/Endif中()。

A、须至少有一个Elseif语句

B、可以有任意多个ElseIf-Then语句

C、如果没有Else语句,运行时将出现错误

D、给定的条件只能是关系表达式


参考答案:B

第10题:

关于控制语句,下列哪些说法符合《阿里巴巴Java开发手册》:

A.推荐if-else的方式可以改写成卫语句的形式

B.尽量减少try-catch块内的逻辑,定义对象、变量、获取数据库连接等操作可以移到try-catch块外处理

C.if(condition)statements;单行语句不需要使用大括号

D.在一个switch块内,都必须包含一个default语句并且放在最后,即使它什么代码也没有


正确答案:ABD

更多相关问题