2014-09-28 49 views
1

我犯了一个为Android编写Scala程序和依赖Scala对象的错误。那么在编写游戏时真的很方便的单身人士,现在游戏结束时,主要由Activity加载的类实例就像GC:d一样,但Scala对象似乎留在内存中。所以当我重新开始游戏时,对象处于未知状态,而不是像第一次启动游戏时那样进行初始化。卸载Scala对象

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

回答

3

你不能。你必须把它们变成类,并在你的主对象或者其他任何对象中实例化每个对象。

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