Because you return a value equal to 4. Changing a variable that represented that value has no effect.
This is because primitive types are passed by value, not reference.
Consider this example:
Do you understand now?
If you wanted to change the result in finally clause you would need to do the following