资讯专栏INFORMATION COLUMN

【深入浅出-JVM】(6):栈帧

wums / 1529人阅读

摘要:代码其中方法的栈帧如下,一共个类型的局部变量一共占用个字感谢您的耐心阅读,如果您发现文章中有一些没表述清楚的,或者是不对的地方,请给我留言,您的鼓励是作者写作最大的动力。

代码
package com.mousycoder.mycode.happy_jvm;



/**

 * @version 1.0

 * @author: mousycoder

 * @date: 2019-06-11 15:45

 */

public class TestStackDeep1 {



    private static int count = 0;



    public static void recursion(long a,long b,long c) {

        long e = 1, f= 2,g =3 ,h=4,i=5,k=6,q=7,x=8,y=9,z=10;

        count++;

        recursion(a,b,c);

    }



    public static void recursion(){

        count++;

        recursion();

    }



    public static void main(String[] args) {

        try {

            recursion(1,2,3);

        } catch (Throwable e) {

            System.out.println("deep of calling = " + count);

            e.printStackTrace();

        }

    }

}


其中 recursion(long a,long b,long c) 方法的栈帧如下,一共13 个long类型的局部变量一共占用 26 个字

感谢您的耐心阅读,如果您发现文章中有一些没表述清楚的,或者是不对的地方,请给我留言,您的鼓励是作者写作最大的动力。

作 者 : @mousycoder

原文出处 : http://mousycoder.com/thinking-in-jvm/6/

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/75377.html

相关文章

  • JVM系列(一):深入详解JVM 内存区域总结!

    摘要:一内存区域虚拟机在运行时,会把内存空间分为若干个区域,根据虚拟机规范版的规定,虚拟机所管理的内存区域分为如下部分方法区堆内存虚拟机栈本地方法栈程序计数器。前言 在JVM的管控下,Java程序员不再需要管理内存的分配与释放,这和在C和C++的世界是完全不一样的。所以,在JVM的帮助下,Java程序员很少会关注内存泄露和内存溢出的问题。但是,一旦JVM发生这些情况的时候,如果你不清楚JVM内存的...

    Aldous 评论0 收藏0
  • 深入理解java虚拟机》学习笔记系列——java内存区域划分

    摘要:运行时数据区域的学习,是学习以及机制的基础,也是深入理解对象创建及运行过程的前提。了解内存区域划分,是学习概念的前提。 Java 运行时数据区域的学习,是学习 jvm 以及 GC 机制的基础,也是深入理解 java 对象创建及运行过程的前提。废话不多说,直接进入正题: 一张图总结 showImg(https://segmentfault.com/img/bVOMAn?w=685&h=5...

    史占广 评论0 收藏0
  • 学习JVM是如何从入门到放弃的?

    摘要:而字节码运行在之上,所以不用关心字节码是在哪个操作系统编译的,只要符合规范,那么,这个字节码文件就是可运行的。好处防止内存中出现多份同样的字节码安全性角度特别说明类加载器在成功加载某个类之后,会把得到的类的实例缓存起来。 前言 只有光头才能变强 JVM在准备面试的时候就有看了,一直没时间写笔记。现在到了一家公司实习,闲的时候就写写,刷刷JVM博客,刷刷电子书。 学习JVM的目的也很简单...

    Joyven 评论0 收藏0
  • JVM 完整深入解析

    摘要:堆内存的划分在里面的示意图垃圾回收一判断对象是否要回收的方法可达性分析法可达性分析法通过一系列对象作为起点进行搜索,如果在和一个对象之间没有可达路径,则称该对象是不可达的。 工作之余,想总结一下JVM相关知识。 Java运行时数据区: Java虚拟机在执行Java程序的过程中会将其管理的内存划分为若干个不同的数据区域,这些区域有各自的用途、创建和销毁的时间,有些区域随虚拟机进程的启动而...

    shenhualong 评论0 收藏0
  • JVM从小白学成大佬】2.Java虚拟机运行时数据区

    摘要:虚拟机在执行程序的过程中会把它所管理的内存划分为若干个不同的数据区域。栈帧栈帧是用于支持虚拟机进行方法调用和方法执行的数据结构,它是虚拟机运行时数据区中的虚拟机栈的栈元素。栈帧的概念结构如下运行时数据区脑图高 这里我们先说句题外话,相信大家在面试中经常被问到介绍Java内存模型,我在面试别人时也会经常问这个问题。但是,往往都会令我比较尴尬,我还话音未落,面试者就会背诵一段(Java虚拟...

    shuibo 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<