⚠️⚠️⚠️ 注意,单元测验题目顺序不会发生变化,但答案选项顺序会发生变化,因此正确答案显示答案内容而非选项 ⚠️ 单选(2分)有以下程序源代码 编译源程序之后,如果运行命令是java TestException,则系统会报出( )。 单选(2分) 如果从键盘上输入12w,会报出( )。 单选(2分)有以下程序源代码: 如果从键盘上输入“apple”,会报出( )。 判断(2分)Java提供的所有异常类的父类是Thrownable。( ) 判断(2分)捕获异常时,try语句块后面的若干catch块中的异常如果没有继承关系,各个catch块的先后顺序可以随意安排。( ) 判断(2分)有以下程序源代码: 上述语句中,红色显示的函数调用语句执行时,两个catch块都能捕获到相应的异常。( ) 判断(2分)finally块可以和catch块互换位置。( ) 填空(2分)捕获异常时,try语句块后面的若干catch块的安排要遵循( )的原则。 填空(2分)如果一个方法存在一个或者多个异常,在这个方法的方法体中,需要使用关键字( )声明对应的异常。 填空(2分)异常类NumberFormatException的直接父类是( )。
public class TestException
{
public static double calculateArea(double a, double b, double c)
{
double p = (a+b+c)/2;
return Math.sqrt(p*(p-a)*(p-b)*(p-c));
}
public static void main(String[] args)
{
double a = Double.parseDouble(args[0]);
double b = Double.parseDouble(args[1]);
double c = Double.parseDouble(args[2]);
double s = calculateArea(a, b, c);
System.out.println("边长为"+a+","+b+","+c+"的三角形面积是"+s);
}
}
A.Exception
B.InputMismatchException
C.NumberFormatException
D.ArrayIndexOutOfBoundsException
正确答案:ArrayIndexOutOfBoundsExceptionScanner reader=new Scanner(System.in);
int a=reader.nextInt();
A.Exception
B.Error
C.NumberFormatException
D.InputMismatchException
正确答案:InputMismatchExceptionpublic class TestException
{
public static void main(String[] args)
{
double a = Double.parseDouble(args[0]);
//省略代码
}
}
A.InputMismatchException
B.NumberFormatException
C.Exception
D.不会报出异常
正确答案:NumberFormatException
A.✔️ B.✖️
正确答案:✖️
A.✔️ B.✖️
正确答案:✔️//假设已经有异常类TriangleMinusLengthException和TriangleUnequationException。
public class TestSelfException
{
public static double calculateArea(double a, double b, double c) throws TriangleMinusLengthException, TriangleUnequationException
{
if (a<0 || b<0 || c<0)
throw new TriangleMinusLengthException("负边长异常");
if (a+b<c || a+c<b || b+c<a)
throw new TriangleUnequationException("不满足三角不等式异常");
double p = (a+b+c)/2;
return Math.sqrt(p*(p-a)*(p-b)*(p-c));
}
public static void main(String[] args)
{
double a = 3, b = 4, c = 5;
double e = -4, f = 2, g =10000;
try{
double area = calculateArea(a,b,c);
System.out.println("面积:" + area);
area = calculateArea(e, f, g);
System.out.println("面积:" + area);
}catch(TriangleMinusLengthException me){
System.out.println("边长为负,请改正");
}catch(TriangleUnequationException ue){
System.out.println("边长不满足三角不等式,请改正!");
}
}
}
A.✔️ B.✖️
正确答案:✖️
A.✔️ B.✖️
正确答案:✖️
正确答案:先具体后抽象
正确答案:throw
正确答案:RuntimeException