This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
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?