浅谈对Context的理解

题记:很多年前在乐视面试的时候遇到过Context的相关问题,早就记录下来,并查阅API等资料后总结到笔记当中,今天分享给各位,共勉。

一,在一个应用程序中有多少个Context实例?谈一下你对Android中的Context的理解?什么是Context?

1.Context的子类有哪些?

(1)Application

(2)Service

(3)Activity


         那么现在可以回答上面的问题了,一个程序中的Context实例的数量就是子类数量的和就是看你一个应用程序中有多少个Application(一个App应用程序中只有一个Application),有多少个Service,有多少个Activity,他们相加的和就是Context实例的数量

         接下来我们来回答一下什么是Context的问题,我总结成三个方面来回答:

1,它描述的是一个应用程序环境的信息,即上下文。
2,该类是一个抽象类(abstract class),Android提供了改抽象类的具体实现类(比如
Contextlml)
3,通过它我们可以获取应用程序的资源和类,也包括一些应用级别的操作
例如:启动一个activity,发送广播,接受intext信息,等。

二.什么时候创建Context实例

应用程序创建Context实例有如下几种情况
1,创建Applicaiton对象时,而且整个App共一个Application对象
2,创建Service时候
3,创建Activity时候
三.getAppilicationContext()和getApplication()有什么区别和限制
       两个本质上是没有区别的,但是在使用上有一定的限制
在广播中只能使用getApplicationContext()


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值