我是否可以将throw,throws,try-catch这样理解,throw是不可以单独使用的,他必须和throws和try-catch一起使用,意思就是说当程序中throws一个异常,我们或者可以将他throws给运行时,或者用throw来进行抛出,或者用try-catch来捕获?
throw,throws,try-catch之间到底是怎么合作的呢?请帮忙解答下谢谢

解决方案 »

  1.   

    1. public void method() throws XXXException
    {
         ....
         throw new XXXException();
         
    }2. public void method() throws XXXException{
        try
        {
         ....
        }
        catch(XXException xe)
       {
           logger.errot(xe);
         //or xe.printStrac();  
        }     
    }3. public void method() 
    {
        try
        {
         ....
        }
        catch(XXXException xe)
       {
           logger.errot(xe);
          throw new XXXExcetpion(xe);
        }     
    }
      

  2.   

    throw 用来在方法中产生一个异常;throws 跟方法一起使用如public void method() throws XXEception 表示此方法method不处理XXEception 异常,而是将它抛给他的调用者,他的调用者可以处理这个异常,也可以不处理这个异常,继续向他的上一级调用抛出;try-catch 捕获特定的异常,也就是说我要处理某个异常.对于throw 和 throws来说 如果在方法声明的时候没有指定throws 来抛出异常的话,那你在此方法中就不能使用throw 来产生异常,如果你非要用throw来产生异常;那你就必须使用try-catch来捕获这个异常。