Hi Vivek
The reason why you get the following is as follows.
Once the code a==null is successfull, the MalformedURLException is thrown. This exception is caught in the same
test() method which prints CaughtMalformedURLException and again throws the same execption.
But before control is transferred to the main, finally() is executed, so it prints
End finally.
Then this exception is caught in the main() method which prints
Exception at main().
Hope this clarifies
Anand