Win a copy of Programmer's Guide to Java SE 8 Oracle Certified Associate (OCA) this week in the OCAJP forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

return statement in try block

 
rajesh kumar rayavarapu
Greenhorn
Posts: 12
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi iam beginer to the java npls tell me the answer i have faced this question in on of the interview.


class demo
{
..........
.........
try
{
...
....
return;
}
catch(....)
{}
finally()
{}
}

In the above program i have written return statement in try block,if exception is there in try block what happend(return is there in try block) and exception is not there in try block?

pls tell me i have faced this question two interviews yaaa
 
Jesper de Jong
Java Cowboy
Saloon Keeper
Pie
Posts: 15437
41
Android IntelliJ IDE Java Scala Spring
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Write a small program yourself, compile it and run it to find out what happens. The best way to learn is to experiment.
 
sadhna singh
Greenhorn
Posts: 29
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
If you will get an exception it will go to the catch and finally and if no exception then only finally.So return will not effect much.
Best way is write a code and run all aspects,the questions in your mind.
 
Dinesh Arora
Greenhorn
Posts: 21
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,
Here's the thing that you should burn in when it comes to TRY and CATCH.

1. No matter whether an exception is thrown or not, finally block will be executed!!!.

2. If an exception is thrown, return will not be executed, catch and then finally both will be executed.
 
Kaydell Leavitt
Ranch Hand
Posts: 690
Eclipse IDE Firefox Browser Mac OS X
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I believe that the only way to prevent a finally-block from being executed is to call the method:

System.exit();

The fact that this prevents finally from being called may be a reason to throw an exception or an error instead of calling System.exit();

Kaydell
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic