根据我传的值,应该发生2个异常啊 为什么只能打印出一个异常?在这个值下面 为什么第2个异常发生不了呢~
class Demo
{
int div(int a,int b)throws ArithmeticException,ArrayIndexOutOfBoundsException
{
int[] arr = new int[a];
System.out.println(arr[4]);//-----当第一个发生异常时,下面的另外一个return语句貌似读不到了。
return a/b;
}
}
class ExceptionDemo2
{
public static void main(String[] args) //throws Exception
{
Demo d = new Demo();
try
{
int x = d.div(3,0);
System.out.println("x="+x);
}
/*catch(Exception e)
{
System.out.println("hahah1:"+e.toString());
}
*/
catch (ArithmeticException e)
{
System.out.println(e.toString());
System.out.println("被零除了!!");
}
catch (ArrayIndexOutOfBoundsException e)
{
System.out.println(e.toString());
System.out.println("角标越界啦!!");
}
System.out.println("over");
}
}
|