在调用 onCreate 之前初始化变量是不好的做法吗?

Is it bad practice to initialize variables before calling onCreate?

我一直在想,因为我是 Android 的新手,在调用 onCreate 之前在 class 的字段声明中初始化变量(例如 Context 对象)是否是不好的做法().我正在粘贴我正在谈论的图片。看一下我如何以及何时初始化 Context 对象。与 onCreate 相比,它何时实例化,我可以相信它会在每次我调用它时被初始化 class?

在 onCreate() 中初始化 Context 不会失败。每次调用 class.

时它都会初始化

在调用 onCreate 之前,您不能使用 context。它不会被完全初始化。不过,您可以随时将其保存在变量中。

真正的问题是——你到底为什么要这样做?除非它是静态的,否则没有理由将它的副本保存在 class 变量中,因为您始终可以将其作为 this 引用。而且你永远不应该保存静态 Context.