时间:2010-07-26 09:55:53

标签: java

3 个答案:

答案 0 :(得分:3)

答案 1 :(得分:1)

答案 2 :(得分:0)

你不能“使用”垃圾收集。它是语言及其对象模型的基础部分。

为了澄清这一点,我们只考虑类类型(如StringInteger),并忽略基本类型(如int和{{1 }})。 (数组类型也被视为类类型。)假设char是类类型。

在Java中,与其他语言不同,您永远不会拥有类类型的变量。每当您声明变量T时,T x;实际上是一种“跟踪引用”。该引用可以是x,也可以引用类型为null的现有对象。但是对象本身必须始终显式,动态创建

T

T x = new T(); 引用的那个对象存在于计算机中一些无法直接操作的魔法管理部分。但是,您可以创建更多参考:

x

现在出现了一个自然的问题:当没有更多的引用时,对象会发生什么?答案是垃圾收集:当没有对某个对象的进一步引用时,它就有资格在稍后的非确定性时间点被清除。这就是唯一方式,可以在其中恢复与对象关联的资源。

如果没有垃圾收集,你可以在Java中以任何定义明确,健壮的方式完全没有任何对象。