Home Java Exceptions Catching Normal Exceptions
Questions:Ask|Latest

Related Tutorials


 
 

Share on Google+Share on Google+

Catching Normal Exceptions

Advertisement
The exceptions that are generated by methods are referred to as normal exceptions. We have already learned that to catch an exception we use try and catch block.

Catching Normal Exceptions

     

The exceptions that are generated by methods are referred to as normal exceptions.  We have already learned that to catch an exception we use try and catch block. 

try {
myTestException();
}
catch(ExceptionType1 e) {
System.out.println(e.getMessage());
}
catch(Exceptiontype2 e) {
System.out.println(e.getMessage());

The code above shows how to handle multiple exceptions. We have used myTestException(); method here which generates two different types of exceptions handled by separate catch clauses in a unique manner. By comparing the exception type, the catch clauses are examined whenever an exception occurs in a try block A match will occur whenever the type of exception is same as that in catch clause or same as the subclass in the catch clause. Hence due to this multilevel catch handlers can be provided which are based on more derived exception types. Lets see one more example:

FileInputStream fis=null; 
try{
fis = new FileInputStream (new File (args[0]));
}
catch (FileNotFoundException e){
System.out.println("File not found!"); + e.getMessage());

Here we have created a file input stream and the constructor which takes a file name to read from will throw FileNotFoundException if the file couldn't be found. Within a try block an object is created that handles the exception FileNotFoundException in a catch block as the constructor is capable of throwing this exception. 

Catching Runtime Exceptions

The exceptions which are not easily traced are known as Runtime Exceptions. For instance,

try {
int x = 50;
for (int i = 15; i >= 0; i--)
System.out.println(x / i);
}
catch(ArithmeticException e) {
System.out.println(e.getMessage());
}

The above code displays a for loop trying to divide a number by zero in its last iteration which would result in runtime exception. We have used try block to handle this exception and a corresponding handler by means of a catch clause. And if we won't handle the exception the program will end up with the termination.  

The disadvantage in handling the runtime exception is that we need to put the doubtful code inside a try block. This approach sometimes causes a mess so its always better to avoid the problems which land you up with the troubles.

Advertisement

If you enjoyed this post then why not add us on Google+? Add us to your Circles



Liked it!  Share this Tutorial


Follow us on Twitter, or add us on Facebook or Google Plus to keep you updated with the recent trends of Java and other open source platforms.

Posted on: March 18, 2008

Related Tutorials

Ask Questions?    Discuss: Catching Normal Exceptions  

Post your Comment


Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
 
 
Comments
DMCA.com