什么时候活动的实例变量被初始化?

在我的Android应用程序中,我有一个奇怪的错误。 像下面这样的实例变量在运行时意外地分配给它的默认值(在这种情况下为false)。 什么时候在android活动中初始化这种类型的变量?

public class MainActivity extends Activity { private boolean isInitialized = false; // <- When do this variable get initialized? } 

创建实例时,将初始化Java中的实例变量。

大多数时候,对象都会被new实例化。

在活动的情况下,它们由Android框架使用reflection进行实例化(参见Instrumentation#newActivity() )。 然后执行Context初始化,并在实例上调用onCreate()活动。

有关详细信息,请查看ActivityThread源代码 。

Java没有“全局变量”。

你在谈论instance variables 。 每次创建新实例时都会初始化它们。