卸载Scala对象

时间:2014-09-28 08:12:21

标签: android scala

我犯了为Android编写Scala程序并依赖Scala Objects的错误。那些单身人士在编写游戏时非常方便,但现在游戏结束时,由主Activity加载的类实例是GC:d应该是这样,但Scala对象似乎留在内存中。因此,当我重新开始游戏时,对象处于未知状态,而不是像第一次开始游戏时那样初始化。

那么“摧毁”这些物体的正确方法是什么?换句话说,如何在Android Activity结束时确保运行某些销毁代码?

1 个答案:

答案 0 :(得分:3)

你做不到。您必须将它们转换为类并在主Game对象中实例化每个实例,或者无论它调用什么。

对象在应用程序的整个持续时间内都是单例(直到JVM关闭)。这就是为什么他们通常包含任何可变的东西。