*
The moose likes Programmer Certification (SCJP/OCPJP) and the fly likes Exceptions Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Murach's Java Servlets and JSP this week in the Servlets forum!
JavaRanch » Java Forums » Certification » Programmer Certification (SCJP/OCPJP)
Bookmark "Exceptions" Watch "Exceptions" New topic
Author

Exceptions

Sanjeev Gupta
Greenhorn

Joined: Mar 08, 2001
Posts: 15
Given the following code :
import java.io.*;
import java.net.*;

public class Base{

private void test() {

try {
String a = null;
String b = "b";
// Complex processing

if(a==null)
throw new MalformedURLException("test");
if(b ==null)
throw new EOFException("test");
// Complex processing

System.out.println("End of try block");

}
catch (MalformedURLException e) {
System.out.println("Caught MalformedURLException");
return;
}
catch (EOFException e) {
System.out.println("Caught EOFException");
return;
}
finally {
System.out.println("End finally");
}
System.out.println("End processing");
}

static public void main(String[] a) {
new Base().test();
}

}
Could somebody explain why "End Processing" is not printed out?
Thanks.
Seema Das
Ranch Hand

Joined: Mar 05, 2001
Posts: 78
Since you have return statement in your catch block, it will print "Caught MalformedURLException", then it will execute finally block and then return. It won't execute any code after finally.
-Seema
Sanjeev Gupta
Greenhorn

Joined: Mar 08, 2001
Posts: 15
Thanks Seema, I somehow overlooked the 'return'. The eyes have to be really open!
 
It is sorta covered in the JavaRanch Style Guide.
 
subject: Exceptions
 
Similar Threads
exception ?
Exceptions...
Miscellaneous
Finally
try catch...........