jvm 概念画图
堆解决的是数据存储的问题,即数据怎么放,放在哪儿。
栈解决的是运行问题,即程序如何执行,或者说如何处理数据
方法区则是辅助堆栈的永久区(Perm)解决堆栈信息的产生,是先决条件。
我们创建一个新的对象,User:那么User类的一些信息(类信息,静态信息都存在于我们的方法区中)
而User类被实例化出来之后,被存储在java堆中,一块内存空间
当我们去使用的时候,都是使用User对象的引用,形如User user = new User();
这里的user就是存在在java栈中的,即User真实对象的一个引用