首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >java虚拟机规范

java虚拟机规范
EN

Stack Overflow用户
提问于 2014-01-09 08:43:14
回答 2查看 97关注 0票数 0

我正在读"java虚拟机规范第7版“,有件事让我很困惑,下面是一个问题:

在本例中,使用当前帧(§2.6)恢复调用程序的状态,包括其局部变量和操作数堆栈,调用方的程序计数器适当地增加以跳过方法调用指令。然后,在调用方法的框架中,将返回的值(如果有的话)推送到该框架的操作数堆栈中,执行将继续正常进行。

那么“跳过方法调用指令”是什么意思呢?有人能解释吗?非常感谢!

EN

回答 2

Stack Overflow用户

发布于 2014-01-09 08:50:36

在完成一个方法之后,它必须返回到调用方。继续执行程序的位置超过了调用方法的代码中调用指令的方法。

票数 0
EN

Stack Overflow用户

发布于 2014-01-09 08:50:50

假设程序正在执行调用function_A的function_B,在调用function_B之前,必须保存function_A的局部变量状态,然后将其推送到堆栈中。在这里,我们在调用function_B之后保存程序计数器,以便在执行function_B返回后知道在哪里继续。然后,将function_B的参数推送到堆栈中,并调用function_B。当function_B从执行中返回时,function_A的局部变量将从堆栈和指向调用function_B后的下一条指令的程序计数器中恢复。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21015324

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档