对于catch子句的排列,下列哪种是正确的()

题目
单选题
对于catch子句的排列,下列哪种是正确的()
A

父类在先,子类在后

B

子类在先,父类在后

C

有继承关系的异常不能在同一个try程序段内

D

先有子类,其他如何排列都无关

参考答案和解析
正确答案: B
解析: 暂无解析
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

Java语言中,下列子句中是异常处理统一出口的是( )。

A.finally {...}子句

B.try {...}子句

C.catch {...}子句

D.以上说法都正确


正确答案:A
解析:finally语句可以保证控制流在转到其他路径以前程序的状态能被统一管理,所以对 catch来说,无论哪个捕获异常,最后一定要去执行finally子句。

第2题:

对于catch子句的排列,下列( )是正确的。

A.父类在先,子类在后

B.子类在先,父类在后

C.有继承关系的异常不能在同一个try程序段内

D.先有子类,其他如何排列都无关


正确答案:A

第3题:

下列域名书写正确的是()。

A.catch.gov.cn

B.catch.gov.cn

C.catch,edu,cn

D.catch..gov.cn1


正确答案:B

第4题:

对于try和catch子句的排列,下列各项中正确的是( )。

A.子类异常在前,父类异常其后

B.父类异常在前,子类异常其后

C.先有子类,其他如果排列都无关

D.有继承关系的异常不能在同一个try程序段内


正确答案:A
解析:Java语言中,在捕获父类异常时对其子类异常也捕获了,根据try和catch的匹配原则,尽量使用一个父类去捕获其所有子类的异常,所以A选项描述的子类异常在前,父类异常其后是正确的。

第5题:

对于catch语句的正确排列是 ( )

A.父类在先,子类在后

B.子类在先,父类在后

C.有继承的异常不能在同一个try段内

D.排列无关


正确答案:B
解析:当用多catch子句时,记住异常子类必须在它们任何父类之前使用是很重要的。这是因为运用父类的catch子句将捕获该类型及其所有子类类型的异常。这样,如果子类在父类后面,子类将永远不会到达。

第6题:

catch(…)一般放在其他catch子句后面,该子句捕获所有类型的异常。()


正确答案:对

第7题:

对于catch子句的排列,下列说法正确的是

A.父类在前,子类在后

B.父类在后,子类在前

C.有继承关系的异常不能在同一个try程序段内

D.先有子类,其他如何安排都无关


正确答案:A
解析:①不要用一个子类去捕获父类的异常,尽可能用一个父类去捕获其所有的子类的异常。这也就是选项A)中的说法:父类在前,子类在后原则。②catch从句的顺序排列要注意,应该将最特殊的排在最前面,依次逐步一般化。

第8题:

应改为“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;
}

第9题:

Java 语言中,下列( )是异常处理的统一出口。

A.try{…}子句

B.catch{…}子句

C.finally{…}子句

D.以上说法都不对


正确答案:C

第10题:

下列域名书写正确的是( )。

A._cateh.gov.cn

B.catch.gov.cn

C.catch,edu,cn

D.catch..gov,cnl


正确答案:B
解析:域名的结构是:主机名……第二级域名.第一级域名,在域名中只能以字母字符开头,以字母字符或数字符结尾,各子域名之间只能以圆点分开。故正确答案为B。

更多相关问题