浅谈对JAVA堆栈的理解

浅谈JAVA堆栈

堆和栈都是一种数据项按序排列的数据结构

数据结构中的堆栈

栈和堆都是一种数据结构
栈在数据结构中更像是一个杯子,你在往里面倒水时,就类似于往里面存放值,但是在倒出杯子中的水时,上面的水(之后存放的值)被先倒了出来,下面的水(之前存放的值),这就是栈的一个特点---------LIFO(后进先出),后面存放的值先被调用。

堆在数据结构中则像一颗倒立的大树,堆是一种经过排序的树形数据结构,每个结点都有一个值,通常所说的二叉堆指的就是堆的数据结构。堆相对于栈来说,显得更加的随意,对于数据的存放和提取没有像栈一样有特别的限制,对于堆中的数据的存取是随意的,类似于你在一个书架前看书,虽然书是有顺序的整齐摆放,但是你想看哪本书就可以直接拿哪本书,并不需要将前面的书都拿出来,这是与栈不同的。

Java中的栈和堆

栈中存放这基本数据类型的值,这些值的内存分配都在栈中

堆中则存放着所有引用数据类型的值,例如在实例化一个对象时,在栈内存中会分配该对象在堆中的地址信息,而在堆中才是真正存放值的地方

这是本人在接触了几天面向对象时对栈和堆的理解,如有错误或者不足之处,还希望指出。
虽然不足之处是肯定有的hhhhha
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值