Two Laptop Bag
The moose likes Programmer Certification (SCJP/OCPJP) and the fly likes Final Local Variable Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Certification » Programmer Certification (SCJP/OCPJP)
Bookmark "Final Local Variable" Watch "Final Local Variable" New topic

Final Local Variable

Ovidiu Mura

Joined: Jun 18, 2011
Posts: 2

When a local variable is devlared final, where is it stored? Stack? Heap?

For example:

class Test{

public void foo(){
final int var1 = 0; // var1 cannot be modified; where does 'var1' is stored?


Thanks in advance,
Stephan van Hulst

Joined: Sep 20, 2010
Posts: 3780

The final modifier should not affect where a variable is stored. So regardless, a local variable will still be on the stack. However, keep in mind that when you reference a final local variable from an anonymous class, a copy of the value will be stored in an "invisible" variable in the instances of that anonymous class.
I agree. Here's the link:
subject: Final Local Variable