What are Java JVM Run-time Data Areas?

 Following are the runtime data areas of JVM.

  • Class Area − Storage areas for a class elements structure like fields, method data, code of method etc.

  • Heap − Runtime storage allocation for objects.

  • Stack − Storage for local variables and partial results. A stack contains frames and allocates one for each thread. Once a thread gets completed, this frame also gets destroyed. It also plays roles in method invocation and returns.

  • PC Registers − Program Counter Registers contains the address of an instruction that JVM is currently executing.