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

final local variable and method inner class

 
Arvind Darwin
Greenhorn
Posts: 10
Eclipse IDE Java Windows
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator


The output for the above code is:
From within method: "I am the infamous inner class: Outer : local stuff"
From outside method: "I am the infamous inner class: Outer : local stuff"

My question is:

Local variables of methods are created on stack and destroyed when the method call is over.
If final local variable is created on the stack for methodWithInner() then it should be destroyed when the method call gets over at LINE#1.

But I am able to access the stack variable via my method inner class and SOP it at LINE#2!!

Are final local variables of a method not created on stack but on heap?

Please help.

Thanks,

Arvind
 
Helen Ma
Ranch Hand
Posts: 451
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Read this link:
http://www.coderanch.com/t/374876/java/java/Method-inner-class-Final-local

According to one of the Java Ranchers, final local variable is stored in a data section of the memory, not on heap or stack.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic