源码分析
moon-sky
这个作者很懒,什么都没留下…
展开
-
【Android面试知识点系列】Looper相关
Looper是一个面试中经常被用来问的知识点,我这里也只是总结一下通过看Looper源码可能在面试中问到的知识点,还是推荐大家多看源码。 Looper在Handler机制中,就像是一个传送带的电动机,它驱动着传送带(MessageQueue)不断的运输货物(message),handler类似于往传送带上面放置消息的机械手臂。不知道这个比喻是否恰当。 默认线程中是否存在Loope...原创 2018-03-17 23:17:57 · 287 阅读 · 0 评论 -
【Android面试知识点系列】Handler相关
和其他面试点一样,我将 通过自己学习源码,来总结可能出现的问题点。再次鼓励的大家通过源码学习Android或者其他语言的知识,源码之下,毫无隐瞒。 Handler作为Android中重要的一个类,在面试中经常被问到,也是Android跨线程通讯的好手段。 谈一谈Handler在Android中的主要用途 安排Message或者Runnable对象在本线程中指定时间点执行 让me...原创 2018-03-18 23:33:44 · 315 阅读 · 1 评论 -
【Android面试知识点系列】MessaeQueue相关
MessageQueue也是面试中与Handler、Looper是Handler问题套餐系列之一。那么究竟它又有什么潜在的知识点呢?让我们一起从源码出发。 MessageQueue通过什么方法将Message对象添加进来?在什么时候执行该操作? MessagQueue通过enqueueMessage(Message,long)方法将Message添加进来,添加的主要流程为,如果该消息...原创 2018-03-19 23:17:10 · 302 阅读 · 0 评论 -
【Android面试知识点系列】Message相关
Message,是一个携带有数据的对象,handler通过发送该对象,完成消息的传递,跨线程的处理等。我们通过源码来学习在有哪些潜在的知识点。 msg.arg1 与 msg.arg2一般在什么场景下使用? 如果传输的数据只是简单的interger类型,这两个参数是相对于setData方法更加低成本的方法,setData开销相对更大一些 相对于new Message,为什么obtain...原创 2018-03-19 23:59:54 · 197 阅读 · 0 评论 -
【Android面试知识点系列】Context相关
Context是大家比较熟悉的一个类,但是里面有好多我们不怎么熟悉的知识点,接下来就让我们通过学习提问的方式,学习Context类源码。 Context是一个接口还是抽象类? 抽象类,通过源码可以知道。 public abstract class Context { Context的主要用途 获取一个应用环境的相关全局信息,例如获取资源、访问classes、启动Acti...原创 2018-03-20 16:15:37 · 319 阅读 · 0 评论 -
【Android面试知识点系列】Activity的爷爷ContextWrapper、父类ContextThemeWraper相关
在开始介绍四大组件之前,我们需要了解一些关于他们的父类的细节,这样有助于我们更好的理解四大组件。上一篇我们介绍了Context,这个抽象类涵盖了很多我们所熟知的方法,也是Android访问应用资源的基础。那么我们接下来看它的子类也是Activity的爷爷ContextWrapper又做了那些封装。 ContextWrapper的主要用途? 该类是对Context的代理,代理了Cont...原创 2018-03-20 23:46:18 · 527 阅读 · 0 评论 -
【Android面试知识点】Activity相关
Activity是Android的四大组件之一,也可以说是出镜率最高的一个类,里面的知识点可以说是非常多,也是面试官必问的,接下来我们就通过学习提问的方式,来学习源码,顺便看看可能有哪些在面试中可能问到,因为Activity的知识点太多,所以可能涵盖不全,还请见谅。 Activity的生命周期 Activities在Android系统中是由一个叫做Activity 栈的来管理的,当一...原创 2018-03-26 13:53:44 · 116 阅读 · 0 评论