抛出异常后如何执行方法

时间:2013-08-22 02:33:31

标签: java exception exception-handling

如何在下面的程序中执行add()方法

class ExceptionHandlingImpl
{
  static void divide()
   {
      try
      {
        double a= 1/0;
      }
      catch(Exception e)
       {     
         throw e;        
       }
   }

  static void  add()
    {
      int a=20,b=30,c;
      c=ab+b;
      System.out.println(c);
    }

 public static void main(String args[])
  {
    divide();
    add();
  }

}

为什么在divide()方法中给出throw语句时,方法add()不会执行。当抛出注释时,add()方法执行正常。无论如何,使用throw也会抛出异常,并且后续执行的方法也会被执行。

3 个答案:

答案 0 :(得分:1)

当您throw例外时,您基本上是在说“我不知道该怎么做”。因此异常会一直冒泡,直到它到达程序的最后一个堆栈帧,如果在这种情况下未处理,则在此时暂停程序。

答案 1 :(得分:0)

因为从'divide'方法中你会抛出异常。如果你想继续,你将需要捕捉并重新抛出异常

答案 2 :(得分:0)

扔掉;将抛出异常并使程序崩溃。

 public class test
    {
      static void divide()
       {
          try
          {
            double a= 1/0;
          }
          catch(Exception e)
           {     
            System.out.println(e);        
           }
       }

      static void  add()
        {
          int a=20,b=30,c;
          c=a+b;
          System.out.println(c);
        }

     public static void main(String args[])
      {
        divide();
        add();
      }

    }