通过方法应用上下文但不通过构造函数应用

时间:2016-07-28 04:36:25

标签: android android-context

我正在context中阅读Android并在我的Android应用程序中使用。但后来我想到了一个想法。那,为什么我们只在context而不是constructor中传递method,类似于component.setContext(context),其中component是假设的组成部分setContext 1}}是一种假设的方法,上下文可以是getConetxt/this/getApplicationContext(根据要求)。

如果有人认为标题或任何内容不合适,他们可以自由更改/编辑。

请帮我理解。谢谢

1 个答案:

答案 0 :(得分:1)

如果您通过构造函数或任何setter方法传递Context,基本上两者都是相同的。

仍然必须在你的类中引用Context ,它将在创建对象期间初始化,即通过构造函数初始化,或者稍后将通过任何setter方法初始化

在这两种情况下,Context引用仍然存在。这只是关于急切初始化延迟初始化的问题。

但是在急切初始化的情况下,在访问类中的Context时,您确信上下文已经初始化并且您可以安全地使用它。

但是在延迟初始化的情况下无法保证。作为大小说明,请查看两种类型的上下文的区别 - 应用程序上下文活动上下文