在我的Android应用程序中,我有一个奇怪的错误。像下面这样的实例变量在运行时意外分配给它的默认值(在这种情况下为false)。何时在Android活动中初始化此类变量?
public class MainActivity extends Activity { private boolean isInitialized = false; // <- When do this variable get initialized? }
创建实例时,将初始化Java中的实例变量。
大多数情况下,对象会使用实例化new。
new
对于活动,它们由Android框架使用反射实例化(请参阅参考资料Instrumentation#newActivity())。然后Context执行的初始化,并onCreate()在实例上调用活动。
Instrumentation#newActivity()
Context
onCreate()
有关详细信息,请参阅ActivityThreadsource。
ActivityThread