品易云推流 关闭
文章详情页
文章 > java基础 > java虚拟机中的栈结构如何理解

java虚拟机中的栈结构如何理解

头像

小妮浅浅

2021-02-25 11:19:443381浏览 · 0收藏 · 0评论

对于java中的内存来说,有一些特定的名词,我们是没有进行了系统的学习,这使得对于概念的理解上比如模糊,栈结构就是一个比较典型的词。相信在线程的存储、java虚拟机中,我们都有频繁的接触到。下面我们就对java栈进行说明,在对详细的结构展开分析,大家都来看看吧。

1、java栈说明

Java栈是JVM作为基于栈结构的计算机存储信息的主要方式。在JVM获得一个Java字节码应用程序之后,它将为这个代码中的每个类方法创建一个栈框架来保存这个方法的状态信息。

2、结构分析

每一个栈框架包含三类信息:

局部变量

执行环境

操作数栈

本地变量是用来存储某个类方法中使用的本地变量。这个vars寄存器指向这个变量表中的第一个本地变量。

在解释Java字节码时,执行环境用来保存解释器所需的信息。这些函数为:上次调用的方法的栈顶和栈底指针,局部变量指针和操作数栈。实施环境是实施方法的控制中心。举例来说,如果解释器要执行iadd(整型加法),则首先要从frame寄存器找到当前的执行环境,然后便会在执行环境中找到操作数栈,从栈顶弹出两个整数进行加法,最后将结果压入栈顶。

操作栈是用来存储操作所需的操作数和操作结果。

以上就是java虚拟机中的栈结构的理解,大家经过本篇的学习,对于栈结构这个知识点已经能够熟练掌握了。如果对于虚拟机不够了解可以看看:java虚拟机是什么https://www.py.cn/toutiao/22942.html

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图