java中方法调用在内存中的体现

来源:互联网 发布:订单生产进度跟踪软件 编辑:程序博客网 时间:2024/06/08 19:20

       在java中,方法以及局部变量(即在方法中声明的变量)是放在栈内存上的。当你调用一个方法时,该方法会放在调用栈的栈顶。栈顶的方法是目前正在执行的方法,直到执行完毕才会从栈顶释放。我们知道,栈是一种执行”先进后出”的数据结构。我在下面举些实际的例子。先看代码。

public void  graduate()//第一个方法

{

study();

}

public void  study()//第二个方法

{

readBooks();

}

public void readBooks()//第三个方法

{

boolean done = true;

}

第一个方法在执行过程中会调用第二个方法,此时,第一个方法在栈中被压在下面,第二个方法进栈,置于栈顶,第二个方法在执行的时候调用第三个方法,此时,第二个方法被压入下面,第三个方法进栈,至于栈顶,栈顶上的方法就是目前正在执行中的。

调用第一个方法graduate()
调用第二个方法study()graduate()
调用第三个方法readBooks()study()graduate()
当第三个方法执行完毕study()graduate()

0 0