public int division(int a,int b) throws Exception
{
try
{
return a/b;
}
catch(ArithmeticException e)
{

e.printStackTrace();
throw new Exception("cannot divide by zero");
}

}
public int fn1(int a,int b) throws Exception 
{
return division(a,b);
}
}问题1:这里面的division和fn1功能都是除对么,只是division有异常判断。
问题2:throws的时候ArithmaticException跟Exception有什么不同的地方,需要注意什么。
问题3:e.toString()和e.printStackTrace()的区别是什么十分感谢大家
这些问题在我看来是高不可攀的,真的羡慕大家什么都会

解决方案 »

  1.   

    1: 两个方法没有太大的区别,division也只是简单的catch异常然后包装成Exception抛出去
    2: ArithmaticException是Exception的子类,对于具体的方法,尽量抛出具体的异常
    3: toString方法返回的是对象的字符串表示,而e.printStackTrace()是打印异常对象的轨迹,输出的第一行包含此对象的 toString() 方法的结果。