What is difference between throw and throws in Java?


One declares it, and the other one does it

Throw is used to actually throw the exception, whereas throws is declarative for the method. They are not interchangeable. 


public void myMethod(int param) throws MyException
{
      if (param < 10)
     {
            throw new MyException("Too low!);
     }
    //Blah, Blah, Blah...
}


The Throw clause can be used in any part of code where you feel a specific exception needs to be thrown to the calling method. 


If a method is throwing an exception, it should either be surrounded by a try catch block to catch it or that method should have the throws clause in its signature. Without the throws clause in the signature the Java compiler does not know what to do with the exception. The throws clause tells the compiler that this particular exception would be handled by the calling method.

People who read this post also read :



2 comments:

Nice post.Another difference is that you can use throw in place of return in your method. I have also shared my view as Difference between Throw vs Throws keyword Java

Post a Comment

Share

Twitter Delicious Facebook Digg Stumbleupon Favorites More