Source:In-depth Understanding of JVM: Memory Areas and Memory Overflow