加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 移动互联 > 正文

春招收获阿里腾讯实习offer,学习、面试经验分享

发布时间:2019-02-16 04:35:37 所属栏目:移动互联 来源:developerHaoz
导读:先说一下自己的情况,本人今年大四,双非一本学校,计算机相关专业,从大一开始加入学院创业团队的 Android 开发组。 去年过年后不久开始投简历,前后投了腾讯、阿里、美团、CVTE 这几家公司,拿到了腾讯、阿里和 CVTE 的实习offer,最终选择了腾讯,也算

组件运行在哪个进程中,是在 AndroidManifest 文件中进行设置的,activity、service、 receiver 和 provider 均支持 android:process 属性,此属性可以指定该组件应在哪个进程运行。我们可以设置此属性,使每个组件均在各自的进程中运行。

进程的优先级

Android 系统将尽量长时间地保持应用进程,但为了新建进程或运行更重要的进程,最终需要移除旧进程来回收内存。为了确定保留或终止哪些进程,系统会根据进程中正在运行的组件以 及这些组件的状态,将每个进程放入 “重要性层次结构” 中。必要时,系统会首先消除重要性最低的进程,然后是重要性相对较高的进程,以此类推,以回收进程。

重要性层次结构一共有 5 级

1、前台进程 — Foreground process

2、可见进程 — Visible process

3、服务进程 — Service process

4、后台进程 — Background process

5、空进程 — Empty process

线程

线程在 Android 中是一个很重要的概念,从用途上来说,线程分为主线程和子线程,主线程的 作用是「运行四大组件以及处理它们和用户的交互」,而子线程的作用则是「执行耗时任务, 比如网络请求、I/O 操作等」,由于 Android 的特性,如果在主线程中执行耗时操作那么就会 导致程序无法及时地响应。因此耗时操作必须放在子线程中执行。

Android 中的线程形态

除了 Thread 本身以外,在 Android 中可以扮演线程角色的还有很多,比如 AsyncTask 和 IntentService,同时 HandlerThread 也是一种特殊的线程。

尽管 AsyncTask、IntentService 以及 HandlerThread 的「表现形式」都有别于传统的线程,但是它们的本质仍然是传统的线程。

我相信,如果你能像我上面的逐字稿这样,结合 Android 里面的知识点清晰地表达出你对进程和线程的理解的话,面试官肯定会很满意的。

这里附上我自己的逐字稿目录,大家也可以按照这样的分类,来对自己的「知识体系」建立不同的逐字稿。

春招收获阿里腾讯实习offer,学习、面试经验分享

2.3 遇到不懂的面试题直接回答不懂,但最好能将面试官的思路往我们会的东西带

在面试的时候,切勿不懂装懂。

我们面试的是技术岗位,有几斤几两,面试官问几个问题就知道 了,如果面试官问到的某个知识点,你只是有点印象或者没多少了解的话,直接回答这个知识不是很熟就行了。不然被面试官针对这个知识点追加几个问题的话,分分钟打你脸。

当然,在说对这个知识不是很熟之后,可以试着将面试官的面试思路往我们会的东西带,例如我 在阿里二面的时候,面试官问我有没有用过 B 树,因为我对 B 树不是很熟,所以我当时是这么讲 的:“对于 B 树不是很熟悉,但之前在看 HashMap 源码的时候,有研究过红黑树,对红黑树比较熟。” 然后成功地将面试官的问题转向了我熟悉的红黑树和 HashMap 的源码上面。

2.4 有意识地锻炼自己的沟通和表达能力

如果想拿到满意的 offer,除了自身的技术实力过硬之外,拥有良好的沟通和表达能力也是非常重要的。

即使实力再强,你不能很好的表达出来的话,也是白费功夫。沟通和表达能力需要长时间的「刻意练习」,并没有什么捷径。

其实在大一的时候,我的沟通和表达能力也是相当差的,但后来自己开始慢慢明白了这项能力的重要性,所以在很多场合都会「刻意练习」这项技能。

而且自己后来当上了团队的负责人,有很多场合都需要我上台演讲或者进行一些内部的分享,再加上自己后来很喜欢玩「狼人杀」,表达能力便在这两年间有了很大的提升。

2.5 每一次面试完都要进行复盘,详细记录面试问到的题目

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读