日期:2014-05-20  浏览次数:20650 次

java的运行内存结构
请问当一个类里面定义一个成员方法后,又方法重载定义了第二个成员方法,那么这两个成员方法是在同一个栈里,还是各自占有一个栈?

------解决方案--------------------
等待高手回复,陪楼主一起等待
------解决方案--------------------
写好的程序在运行时,首先是LOAD进内存,执行过程会涉及内存管理,一般分为四块区域,Heap堆内存,用来放new出来的对象;而程序是放在code代码区,里面有程序的成员方法等;stack栈内存,用来存放方法执行时声明的局部变量的,只放变量,不会把方法放到stack中,方法一旦执行完则在栈里分配的内存也随之消失;data区,用来存放静态变量和字符串常量;执行方法时是根据code区的代码,在stack中给变量分配内存,并赋值,所以操作的主要是stack,heap,和data区的