为什么在java中没有使用指针概念?

时间:2013-03-13 05:11:42

标签: java

我们知道在c / c ++中存在指针概念并且指针概念非常好。然后,为什么java开发人员将其删除,如果我们不能在java中使用它的优缺点。 / p>

1 个答案:

答案 0 :(得分:1)

默认情况下,指令在托管语言中被禁止,以允许内存管理不透明 - 例如,您可以使用压缩垃圾收集器将对象移近一起以释放更大的可用空间块并提高缓存一致性(如果有)没有指针。但是如果有指针,那么每个指针都需要更新或者每次垃圾收集都变得有效,这是不可行的。

(这只是当然的一个原因:)但是一个如何允许指针彻底改变你的编程语言可以做什么的例子。

在某些托管语言中,如C#,您可以声明unsafe {}块,您可以在其中使用非托管内存和指针,但只能在那里使用。