A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

fc389119336

中级黑马

  • 黑马币:8

  • 帖子:92

  • 精华:0

© fc389119336 中级黑马   /  2015-5-5 07:14  /  346 人查看  /  12 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

到底什么是栈什么是堆?完全不知道在讲什么

12 个回复

倒序浏览
电脑中有一片区域叫内存区。我们把内存区比作一片田,那么在这片田(内存)里,画了一小块田(栈内存区)种土豆(存放变量),在画一块田(堆内存区)种番茄(存放对象和成员变量),在画一小块田(方法区)种黄瓜(存放成员方法和静态属性及方法)。

评分

参与人数 2技术分 +1 黑马币 +2 收起 理由
fc734228945 + 2 赞一个!
lwj123 + 1

查看全部评分

回复 使用道具 举报
鱼饵 发表于 2015-5-5 08:05
电脑中有一片区域叫内存区。我们把内存区比作一片田,那么在这片田(内存)里,画了一小块田(栈内存区)种 ...

好生动~~
回复 使用道具 举报
鱼饵 发表于 2015-5-5 08:05
电脑中有一片区域叫内存区。我们把内存区比作一片田,那么在这片田(内存)里,画了一小块田(栈内存区)种 ...

呵呵,我也想说你说的好理解哈
回复 使用道具 举报
堆和栈都是内存中存放数据的地方。堆内存用来存放运行时创建的对象,一般通过new关键字创建的对象都存放在堆内存中;栈主要是用来执行程序的。
回复 使用道具 举报
鱼饵 发表于 2015-5-5 08:05
电脑中有一片区域叫内存区。我们把内存区比作一片田,那么在这片田(内存)里,画了一小块田(栈内存区)种 ...

解释的太生动了。
回复 使用道具 举报
嗯嗯  解释的不错
回复 使用道具 举报
就是内存块,划分为不同区域。只是命名不一样
回复 使用道具 举报
堆就是new出来的对象所存储的区域(成员变量,方法)
回复 使用道具 举报
堆和栈都是内存中存放数据的地方。堆内存用来存放运行时创建的对象,一般通过new关键字创建的对象都存放在堆内存中;栈主要是用来执行程序的。
回复 使用道具 举报
内存的一部分,功能不一样吧
回复 使用道具 举报
Java 程序在运行时,需要在内存中的分配空间。为了提高运算效率,就对空间进行了不同区域的划分,因为每一片区域都有特定的处理数据方式和内存管理方式。栈 :存储局部变量;堆 :存储new出来的东西;方法区 ;本地方法区 (和系统相关);寄存器 (给CPU使用).从生命周期看,栈中的变量随着方法出栈而死亡,堆中的东西在死亡后会等着收垃圾,存在时间较长
回复 使用道具 举报
_hy 中级黑马 2015-5-9 12:48:11
13#
电脑中有一片区域叫内存区。我们把内存区比作一片田,那么在这片田(内存)里,画了一小块田(栈内存区)种土豆(存放变量),在画一块田(堆内存区)种番茄(存放对象和成员变量),在画一小块田(方法区)种黄瓜(存放成员方法和静态属性及方法)。

涨姿势了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马