Topic: 新手关于“堆”的问题? |
Print this page |
1.新手关于“堆”的问题? | Copy to clipboard |
Posted by: rockykid Posted on: 2005-10-05 18:14 java的对象是分配在“堆”上的,这里的堆是指我们数据结构上的那种“堆”么? 高手见笑 |
2.Re:新手关于“堆”的问题? [Re: rockykid] | Copy to clipboard |
Posted by: why Posted on: 2005-10-05 20:19 閣下的問題是甚麼? |
3.Re:新手关于“堆”的问题? [Re: rockykid] | Copy to clipboard |
Posted by: rockykid Posted on: 2005-10-06 09:49 sorry,是数据结构书上的那种排序堆吗? |
4.Re:新手关于“堆”的问题? [Re: rockykid] | Copy to clipboard |
Posted by: andykid Posted on: 2005-10-06 10:25 不是,在thinking in java里作者明确提到了这个问题。java分配内存所说的堆和数据结构的堆是不一样的 |
5.Re:新手关于“堆”的问题? [Re: rockykid] | Copy to clipboard |
Posted by: owlrose Posted on: 2005-10-06 12:19 我的理解,堆和栈都是内存区域 堆: 存放所有对象本身 栈: 存放程序中的内建类型(int,long等), 存放对象的reference(类似句柄) 如果在DotNet中, 栈还存放 struct 结构类型 |
6.Re:新手关于“堆”的问题? [Re: rockykid] | Copy to clipboard |
Posted by: truthawp Posted on: 2005-10-06 18:46 我的理解是:堆和栈是映射关系,有点象链式数据结构,栈提供一个地址,而堆里有着这个地址里具体所指的东西 |
7.Re:新手关于“堆”的问题? [Re: rockykid] | Copy to clipboard |
Posted by: rockykid Posted on: 2005-10-06 19:29 谢谢 andykid 不只是第几章的,我没记得有看到 |
8.Re:新手关于“堆”的问题? [Re: rockykid] | Copy to clipboard |
Posted by: bloodwolf Posted on: 2005-10-08 10:52 好像不是这样吧。 按照windows编程C/C++的说法 动态分配的对象都是使用堆 而在编译时就可以确定的对象使用的内存是栈,如函数的参数传递,定义并初始化的变量。 好像是因为栈的存取速度比堆快。 栈所指的内存是程序启动时系统分配的,如果有无限的递归调用系统就会栈溢出或不够的错误。 不知道java中的堆栈概念是不是与C/C++有不同。 但此处的堆栈概念肯定不是数据结构的堆栈 |
9.Re:新手关于“堆”的问题? [Re: rockykid] | Copy to clipboard |
Posted by: wijh Posted on: 2005-10-08 14:11 看了inside JVM,sun并没有对外公开JVM内的栈和堆的结构是怎么样的,可见应该不是数据结构课中的那个栈和堆的结构。 |
10.Re:新手关于“堆”的问题? [Re: rockykid] | Copy to clipboard |
Posted by: crazy4stef Posted on: 2005-10-08 18:39 这个是操作系统中的概念 |
11.Re:新手关于“堆”的问题? [Re: rockykid] | Copy to clipboard |
Posted by: andykid Posted on: 2005-10-09 00:59 sorry,是偶记错了,是另一本书 Robert Lafore所著的Java 数据结构和算法(第二版)中介绍的。原文是 注意 这里的"堆”是指一种特殊的二叉树(指数据结构里的堆),不要和Java和C++等编程语言里的"堆"混淆,后者指的是程序员用new能得到的计算机内存的可用部分。 |
12.Re:新手关于“堆”的问题? [Re: andykid] | Copy to clipboard |
Posted by: rockykid Posted on: 2005-10-09 14:33 rethank you,kid! |
13.Re:新手关于“堆”的问题? [Re: rockykid] | Copy to clipboard |
Posted by: hbyw618 Posted on: 2005-11-12 14:19 大悟了,谢谢 |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |