BBS水木清华站∶精华区
发信人: Winobject (无忌), 信区: Java
标 题: Re: 如何实现链表等数据结构?
发信站: BBS 水木清华站 (Sun Jan 31 10:01:32 1999)
【 在 Compiler (编译器) 的大作中提到: 】
∶ Java中并非没有指针和引用,事实上,Java中的对象全部是由指针("引用")
>>>指针和引用是不一样的,Java 没有指针,但有引用.
>>>可以利用引用来生成链表.
∶ 在"堆"中进行内存分配的(与C++不同,后者可以在"栈"中直接生成对象,
∶ 但是这种对象不适于进行多态操作).
∶ C++中既有指针,又有引用,指针和引用在实现上有共同点,他们的最大区别
∶ 在于,指针可以进行运算,而引用不行,所以,引用要比指针安全的多.
∶ 在很多Java的书籍中,都会出现"引用"一词.或者说Java有指针,只是
∶ 其指针不能参加运算.这两种说法在本质上是一致的.
∶ 链表等数据结构是必须由指针来完成的,但是在链表的的操作中,涉及的
∶ 是内存的分配和对象的联系,几乎不会,也不提倡使用指针加减法等运算.
∶ 所以,用Java的引用是完全可以实现的.
∶ 我认为,数据结构中指针的加减法运算主要使用鲁棒性来换取速度,
∶ 数据结构是完全可以用引用实现的.至于使用Java天然提供的predefined classes,
∶ 自然更好.
∶ 一点陋见,欢迎指正.
--
※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: 202.119.38.2]
BBS水木清华站∶精华区