用throws,引用此方法时不一定要catch,可以继续throws(当然必须也是方法的定义),直到最后一个引用方法,再catch.不用throws,必须catch!
   初学者互相学习!

解决方案 »

  1.   

    throw就是抛出一个异常,如果有自己程序预测不了的异常,那就抛出。
    抛出的异常必须catch,这是语法规则。
      

  2.   

    public test() throws Exception
    {
      if(...)
       throw new Exception ("Exception!!");
    }
      

  3.   

    那么问问,如果自己程序有预测不了的异常,却不抛出,即不写throw new exception,会有什么结果啊?
      

  4.   

    throw new Exception();应该是抛出了异常了吗?这样不是说:不管会不会出异常,使用throw后,就一定抛出一个异常给别人处理了吗?
      

  5.   

    throw是一种控制程序流程的特殊方法而已。没有相应的catch的话,可以中止当前的方法继续执行。声明方法时候,如果不声明throws的话,那么一般的Exception都要在这个方法中终结,也就是说一定要有相应的catch处理,否则编译时会产生错误。如果方法声明了throws的话,可以交给上一级方法去处理。以此类推。但是有些Exception可以不加捕捉,编译也会通过。继承Exception类,可以自己定义Exception,对于特定的状态,用throw抛出专用的例外。这对于特定的middle ware开发,有一定帮助。
      

  6.   

    throws指该方法可能会抛出异常
      

  7.   

    private void a() throws xxException {}private void b() throws xxException {//success
    a();
    }private void c(){ //success
    try{
    a();
    }catch(xxException ex){}
    }private void d(){ //will not success
    a();
    }