1)用throws声明的异常表示此方法不处理异常,而交给方法的调用处处理。
比如:- class Math{
- public int div(int i,int j) throws Exception{ //方法可以不处理异常
- int temp=i/j;
- return temp;
- }
- }
- public class ThrowsDemo
- {
- public static void main(String[] args)
- {
- Math m=new Math();
- try{
- System.out.println("除法操作:"+m.div(10,2)); //可以看出,在主方法中添加了try...catch,异常交由主程序处理
- }catch(Exception e)
- {e.printStacktrace();
- }
- }
- }
复制代码
而可以使用throw直接抛出一个异常,- class Math{
- public int div(int i,int j) throws Exception{ //方法可以不处理异常
- int temp=0;
- try{
- temp=i/j; //如果产生异常,教给catch
- }catch(Exception e){ //捕获异常
- throw e;
- }finally{
- System.out.println("****** div over******")
- }
- return temp;
- }
- }
- public class ThrowsDemo
- {
- public static void main(String[] args)
- {
- Math m=new Math();
- try{
- System.out.println("除法操作:"+m.div(10,2));
- }catch(Exception e)
- {e.printStacktrace();
- }
- }
- }
复制代码 |