你这直接就写上内存范围就有点大了,内存一共分成5个区,我们主要用的是堆区,栈区,方法区这几个区,其他的补怎么使用,因而就不多说这个了,程序的运行首先是java虚拟机读取main函数,这个时候就产生了一个压栈的动作,main函数压栈之后,就会根据你所写的程序一步步的向下运行,前边跟你说过成员变量和引用数据类型的问题,如果下边是一个引用数据类型的话就会出现压栈,而main函数的动作就是弹栈操作,可以理解为栈区操作一次只针对一个对象,引用对象来了,其他的就要出去,这个时候在堆区创建一个空间,并将一个地址值赋给这个引用,然后依次往下继续走程序,不知道这么解释你能不能明白?如果补明白再单独问我,一起讨论。 |