Forums Register Login

Exceptions

+Pie Number of slices to send: Send
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.
+Pie Number of slices to send: Send
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
+Pie Number of slices to send: Send
Thanks Seema, I somehow overlooked the 'return'. The eyes have to be really open!
The two armies met. But instead of battle, they decided to eat some pie and contemplate this tiny ad:
a bit of art, as a gift, the permaculture playing cards
https://gardener-gift.com


reply
reply
This thread has been viewed 690 times.
Similar Threads
Finally
Miscellaneous
Exceptions...
exception ?
try catch...........
More...

All times above are in ranch (not your local) time.
The current ranch time is
Apr 16, 2024 07:55:52.