标签:
Context,我们在android开发中经常见到这个名词,尤其是某些方法的参数列表,像是我们Toast中的makeText()中的第一个参数,就是Context。可以这么说,Context是 android中的基础,只有切实掌握好Context的概念和用法,我们才能写出更好的代码。那么,现在就让我们一起来看一下所谓的Context。
Context:提供应用环境全局信息的接口,并且这个接口是由抽象类实现的,它的执行被android系统所提供,允许我们获取以应用为特征的资源和类型,同时启动应用级的操作,如启动Activity,broadcasting和接收intent。
从这段话就可以发现,Context就是一个作为接口使用的抽象类,而且这个接口提供的是应用的全局信息,因为是android系统所提供的,所以我们大多时候都是可以直接得到的。
但是在程序的角度Context又是什么呢?在程序的角度,我们可以有比较权威的答案,Context是个抽象类,我们可以直接通过看其如下所示的类结构来说明答案:可以看到Activity、Service、Application都是Context的子类。也就是说,Android系统的角度来理解:Context是一个场景,代表与操作系统的交互的一种过程。从程序的角度上来理解:Context是个抽象类,而Activity、Service、Application等都是该类的一个实现。 ContextThemeWrapper类 说明:该类内部包含了主题(Theme)相关的接口,即android:theme属性指定的。只有Activity需要主题,Service不需要主题,所以Service直接继承于ContextWrapper类。
标签:
原文地址:http://www.cnblogs.com/fuyanan/p/4595164.html