Java 为什么每次传递上下文时它';it’有可能用不同的方法得到它
我是Android新手…我在看流行的开源Android应用程序的源代码,比如Android邮件、日历。。。并注意到,在每个Java 为什么每次传递上下文时它';it’有可能用不同的方法得到它,java,android,android-context,Java,Android,Android Context,我是Android新手…我在看流行的开源Android应用程序的源代码,比如Android邮件、日历。。。并注意到,在每个类、服务、文件中…总是传递Context参数,然后该类将其初始化到其Context的本地实例中,它几乎多次出现在每个类中 我的问题是,为什么这些类需要将它作为构造函数或方法的参数来获取,而它们可以单独使用这些方法来获取它 1. getApplicationContext() 2. getContext() 3. getBaseContext() 他们可以在一开始就设置并使
类、服务、文件中…
总是传递Context
参数,然后该类将其初始化到其Context
的本地实例中,它几乎多次出现在每个类中
我的问题是,为什么这些类需要将它作为构造函数或方法的参数来获取,而它们可以单独使用这些方法来获取它
1. getApplicationContext()
2. getContext()
3. getBaseContext()
他们可以在一开始就设置并使用它…为什么一个类中有这么多方法可以得到它?他们是否获得了其他上下文
,而不是使用上述三种方法中的一种?
例如,我看到
服务
是上下文类
的一个子类,因此他基本上可以使用这个
关键字,而不必等待调用者发出它。您不需要使用所有这些。活动和服务从上下文u扩展,因此您可以直接使用此
。后续阅读。关于构造函数:哪个类的构造函数?创建的每个类都有自己的构造函数,其中一个参数是上下文,例如myClass(stringfirstname,stringlastname,context-context){this.context=context}
它是一个普通的java类吗。如果需要上下文,则需要将其传递给构造函数。服务活动不需要施工人员。使用this
Ok,那么如果我可以在任何类中使用getApplicationContext
获得它并保存传递不必要的参数,为什么我要传递它呢?请阅读之前发布的链接。对于某些内容,您需要活动上下文。