永发信息网

解析Java程序

答案:3  悬赏:30  手机版
解决时间 2021-04-23 17:12
  • 提问者网友:寂寞撕碎了回忆
  • 2021-04-22 19:56

谁能帮我解析一下java程序:

public class Exception
{ void Proc(int sel) throws ArithmeticException,
ArrayIndexOutOfBoundsException
{System.out.println("In Situation"+sel);
if(sel==0){
System.out.println("no Exception caught");
return;
}
else
if(sel==1)
{int iArray[]=new int[4];
iArray[10]=3;
}
}
}

最佳答案
  • 五星知识达人网友:动情书生
  • 2021-04-22 20:43

这明显是一个被调用函数,因为没有出现public static void main(String args)主


线程
被调用到Proc这个函数并传一个值之后如果出现算法错误就抛Arithmetic异常,如果


是数组越界就抛ArrayIndexOutOfBoundsException异常
进入到下一步了
首先是在屏幕上输出一句话In Situation XX(XX是传过来的整数,如果不是整数就抛


出异常了)
下一步走if判断语句
如果sel等于0的话在屏幕上输出 no Exception caught并返回;
否则判断sel是不是等于1是的话开一个数组iArray给它4个空间
把iArray第10个空间赋予3值,这下肯定就抛出数组越界异常了它会找


ArrayIndexOutOFBoundsException这个异常,也就是上面
void Proc(int sel) throws ArithmeticException,
ArrayIndexOutOfBoundsException
这个头,并交给调用它的语句去处理,也就是交给上一级处理

全部回答
  • 1楼网友:罪歌
  • 2021-04-22 22:27
如果sel等于1就会抛出ArrayIndexOutOfBoundsException!如果sel==0就会打出In Situation0no Exception caught
  • 2楼网友:渡鹤影
  • 2021-04-22 22:13

是哪里不懂吗 throws 用来标识可能抛出的异常

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯