JAVA中的栈和堆

JAVA中的栈和堆转 https www cnblogs com ibelieve618 p 6380328 htmlJAVA 在程序运行时 在内存中划分 5 片空间进行数据的存储 分别是 1 寄存器 2 本地方法区 3 方法区 4 栈 5 堆 基本 栈 stack 和堆 heap 这两个概念很重要 不了解清楚 后面就不用学了 以下是这几天栈和堆的学习记录和心得 得些记录下来 以后有学到新的 会慢慢补充

转:https://www.cnblogs.com/ibelieve618/p/6380328.html

JAVA在程序运行时,在内存中划分5片空间进行数据的存储。分别是:1:寄存器。2:本地方法区。3:方法区。4:栈。5:堆。

基本,栈stack和堆heap这两个概念很重要,不了解清楚,后面就不用学了。

以下是这几天栈和堆的学习记录和心得。得些记录下来。以后有学到新的,会慢慢补充。

 

一、先说一下最基本的要点

 

 

二、先明确以上两点,以下示例就比较好理解了

主函数main()中定义变量int x=1,show()函数中定义变量int x=1。最后show()函数执行完毕。

示意图如下:

JAVA中的栈和堆

 

——————————————————————————————————————————————————————————————————————

示例2

主函数main()中定义数组x,元素类型int,元素个数3。

示图如下:

JAVA中的栈和堆

——————————————————————————————————————————————————————————————————————

示图如下

JAVA中的栈和堆

——————————————————————————————————————————————————————————————————

示例4
main()
  int[] x=new int[3];
  int[] y=x;
  y[1]=100
  x=null;




以上步骤执行步骤

示图如下

JAVA中的栈和堆

——————————————————————————————————————————————————————————————————

示例5

 虽然是个对象都引用new Car,但是是两个不同的对象。每一次new,都产生不同的实体

JAVA中的栈和堆

 

——————————————————————————————————————————————————————————————————

示例6

Car c1=c,这句话相当于将对象复制一份出来,两个对象的内存地址值一样。所以指向同一个实体,对c1的属性修改,相当于c的属性也改了。

JAVA中的栈和堆

 

 

三、栈和堆的特点

栈:

 

堆:

 

注:

什么是局部变量:定义在函数中的变量、定义在函数中的参数上的变量、定义在for循环内部的变量

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/212026.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 下午9:00
下一篇 2026年3月18日 下午9:01


相关推荐

  • springboot整合了哪些框架_框架java

    springboot整合了哪些框架_框架java目录1.SpringBoot框架说明1.1添加pom文件依赖1.2主启动类2.SSM框架整合2.2添加依赖2.3编辑UserController2.4编辑UserService接口及实现类2.5编辑UserMapper接口及Mapper映射文件2.7Mapper注入报错解决方案​​​​​​​1.SpringBoot框架说明理解:传统框架在使用时,特别的繁琐Spring/SpringMVC/Mybatis在使用时需要……

    2022年8月20日
    10
  • JAVA面试基础「建议收藏」

    JAVA面试基础「建议收藏」JAVA面试部分重点内容目录JAVA面试部分重点内容五、输入输出流IO流  1.File类的常用方法?  2.说说IO流?  3.字节流的常用方法?  4.说说字符流?  5.说说缓冲流?  6.说说序列化和反序列化?五、输入输出流IO流  1.File类的常用方法?  java.io.File,使用该类的构造函数就可以创建文件对象,将硬盘中的一个具体的文件以Java对象的形式来表示。方法描述publicFile(Stringpathname)根据路径创建对象(是绝

    2022年7月7日
    24
  • asp数组的使用

    asp数组的使用定义简单数组有两种方法在 asp 中定义和初始化数组 让我们看看每种的例子 方法一 MyArray Array Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec 数组大小由初始化元素个数决定 方法二 DimmyArray 2 指定数组大小 myArray 0 Jan myArray 1 Feb 数组动态扩展 DIMmyArray REDIMmyArray 20 将数组大小

    2026年3月18日
    2
  • 旋转太极八卦

    旋转太极八卦太极八卦图,以同圆内的圆心为界,画出相等的两个阴阳鱼表示万物相互关系。阴鱼用黑色,阳鱼用白色,这是白天与黑夜的表示法。阳鱼的头部有个阴眼,阴鱼的头部有个阳眼,表示万物都在相互转化,互相渗透,阴中有阳,阳中有阴,阴阳相合,相生相克,即现代哲学中和矛盾对立统一规律表示法。哈哈,装了个逼。其实我就是想教大家用css3画出旋转太极八卦。仅此而已。实现效果如下图:Html的代码很简单,就一行…

    2022年5月13日
    49
  • mysql 外键(foreign key)的详解和实例「建议收藏」

    mysql 外键(foreign key)的详解和实例「建议收藏」一、基本概念1、MySQL中“键”和“索引”的定义相同,所以外键和主键一样也是索引的一种。不同的是MySQL会自动为所有表的主键进行索引,但是外键字段必须由用户进行明确的索引。用于外键关系的字段必须在所有的参照表中进行明确地索引,InnoDB不能自动地创建索引。2、外键可以是一对一的,一个表的记录只能与另一个表的一条记录连接,或者是一对多的,一个表的记录与另一个表的多条记录连接。3、如果需要更好的…

    2022年6月15日
    32
  • 集成灶功能图标解释_为什么不建议买集成灶

    集成灶功能图标解释_为什么不建议买集成灶GitLab Auto DevOps功能与Kubernetes集成教程

    2022年4月22日
    70

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号