Java Stack and Heap: Java Memory Allocation Lesson.

Stack Memory Stack in java is a section of memory which contains methods, local variables, and reference variables. Local variables are created in the stack. Java Stack memory is used for the execution of a thread. They contain method-specific values that are short-lived and references to other objects in the heap that is getting referred from the method. Stack memory is always referenced in LIFO (Last-In-First-Out) order. Whenever a method is invoked, a new block is created in the stack memory for the method to hold local primitive values and reference to other objects in the method. As soon as the method ends, the block becomes unused and becomes available for the next method. Stack memory size is very less compared to Heap memory. Key Features of Stack Memory Apart from what we have discussed so far, following are some other features of Stack memory: It grows and shrinks as new methods are called and returned respectiv...