前言

经常被问到:Android中的Context,Activity,Application有什么区别?

简单记录一下,方便自己查阅。如有错误,请指正。

正文

Context是维持Android程序中各组件能够正常工作的一个核心功能类。

Context字面意思是上下文的,在应用中起到的是管理上下文环境中各个参数和变量的使用,方便开发者可以简单的访问到各种资源。

如下是继承关系:

Android中的Context,Activity,Appliction区别

相同点

Activity和Application都是Context的子类。

不同点

维护的生命周期不同。

  1. context维护当前Activity的生命周期。

  2. Application维护整个应用的生命周期。

注意事项

Context的使用需要小心,防止内存泄露。

注意事项:

  1. 不要让生命周期长的对象引用Activity,也就是保证Activity的对象要与Activity的生命周期一样。

  2. 对于生命周期长的对象,可以使用application,Context

  3. 避免非静态的内部类。

 

参考文章

  1. Android之Application和Activity的Context区别

  2. Android 中的 Context, Activity,Appliction

摘抄于网络

相关文章

暂无评论

none
暂无评论...