Question: If execution doesn't cause exception then control goes to finally block. **So is the return statement in try block is being ignored by JVM?** . Or if exception occurs then control goes to catch block there also it ignored return statment and control go to finally block and return from finally

```
  public class Helper {
     public int showException(int a, int b){

           try{
           int c=a/b;
           return c;
           } catch(Exception e){
                return 0;
           } finally{
               return 3;
             }
     }
  }

```

Answer: 
By design, the return in the `finally` block does always take precedence.
Finally will get called last no matter if the catch block is called or not. Perhaps you want to read more documentation. [MSDN Try Catch Finally](http://msdn.microsoft.com/en-us/library/ie/4yahc5d8%28v=vs.94%29.aspx)