- 面试完之后做稍做记录,记下自己回答的不好的问题,方便查漏补缺。
下面是我收集整理的一套大厂Android面试真题含解析,完整的朋友可以点击【这里】免费阅读下载。
CVTE
一面 (电话面)
-
讲讲你看的Android源码
-
说说你在项目中用到的MVC
-
说说观察者设计模式
-
讲讲对线程安全的理解
-
JVM内存模型
-
HashMap的工作原理
-
知不知道可重入锁
-
GC回收算法(凉)
-
引用方式
-
内存溢出和内存泄露的区别,内存泄露一定会内存溢出吗?
-
四大组件有哪些
-
Activity的启动模式
-
Activity的生命周期
-
wait使用时要注意什么(答了死锁,面试官换了题目,应该是没有get到它的点) —和notify成对出现
-
ArrayMap和HashMap区别(没答出来,之前看过ArrayMap但忘完了…)
二面
二面应该是总监面,问题主要偏向项目,有一些问题已经忘记了,只能列出一些还记得的:
-
做了哪些项目?详细说一下项目。
-
讲一下RXJava原理;subscribeOn()与observeOn()哪一个方法多次切换线程只有第一次有效?为什么?
-
Volley原理?
-
Retrofit原理?
-
Volley与Retrofit缓存机制有哪些区别?
-
简单工厂,工厂方法,抽象工厂三种设计模式的优缺点?
-
什么是内存泄露,什么是内存溢出?
-
平常使用什么分析工具来优化APP的性能?
-
手写算法题————实现一个栈
-
Java的集合类包括哪些?各自有什么特点?
-
为什么写博客?
-
今后想要往哪些方面发展?
终面(视频面)
我并不认为我能走到最后[不是矫情和装],因为面过CVTE的人都知道,最可怕的是它的终面,终面是被人诟病的,说CVTE不好的基本都是吐槽它的终面,还是有点慌的。又过了好几天,约好了终面的时间==
-
给前两次面试打分,满分10分。为什么这么打?
-
有没有面试过哪些公司了,有收到多少offer了,为什么?
-
工作的薪资期望,地点和时长?
-
家庭情况,爸妈性格怎么样,你觉得跟谁的比较像,家里人对工作有什么要求吗?
-
你父母小时候是怎么教育你的?
-
有没有女朋友?
-
你未来有什么规划?(我说了一个三年目标和五年目标)
-
你在技术方面最有成就感的一件事情是什么?
-
最近压力最大的是什么事情,如何调解?
-
为什么没有留在之前的公司?
-
如果你面试没有通过,你觉得是什么原因呢?
-
你会因为什么原因拒绝我司的Offer?(个人觉得这个问题回答的很关键,我说我不会拒绝的,因为贵公司就是我想去的公司)
仔细回想发现有点强行跪舔的感觉,中间也暗示过几次只要你要我,我TM就去。
在两天后的晚上官网刷新状态— 终面通过了,bingo!!!
乐视
笔试:
笔试没啥特别的东西,都是一些java基础,安卓基础,几道中规中矩的算法。
一面:
-
四种启动模式?写了几个情况,让我说back键的情况?
-
LayoutManager和MeasureSpec之间的关系?
-
堆排的思想?快排的时间复杂度?手写一下快排?
-
Handler机制?
-
Service即start又bind,怎么才能彻底停止?IntentService怎么实现的?
-
Aidl中Stub和Proxy的区别?聊一聊对Binder的理解?
-
手写一个有序数组的合并?
二面:
二面整体就是根据我的简历,问了问。让我聊一聊看过的OkHttp的源码。
手写了俩个算法:
-
用最小的时间复杂度判断单链表是否有交点。
-
手写二叉树的按层级进行遍历。
HR面:
谈人生谈理想…
乐视的效率不算高…一周后给了答复,可以给offer…不过鉴于乐视最近的情况…再考虑吧
知乎
知乎算是一次体验比较差的体验…一面就让我走了,而且我都不知道啥原因。手动摊手.png
一面:
-
聊一聊ArrayList源码?什么时候初始化数组?怎么扩容?扩容时使用什么样的方式增大数组?
-
聊一聊HashMap源码?怎么扩容?源码的hash是怎么保证平均散列的?hash冲突后,使用什么方式解决?插入的时候在头结点,还是尾结点?key为空的处理?
-
java中的序列化和安卓中的序列化
-
聊一聊安卓中特有的集合
-
线程安全的Map有什么?使用什么样的方式保证线程安全?分段锁和重入锁的区别?
-
synchronized和Lock的区别?
-
Measure的三种情况?
-
切圆角有几种方式?(必须吐槽这个题…)
-
Handler机制?postDelayed怎么处理的?
-
算法:翻转一个int型的大数
一面结束…就没有然后了…
闭关了几个月也有了一些心得(也许是废话):
提前准备(越早越好)+心态良好(打不倒你的终将使你强大)+坚持脚踏实地(对于常问的知识点一定要由浅入深的弄懂到自己可以说出来)+运气(有时候你没面过,不要去怀疑你的实力,可能只是一时运气不好)+注意一些技巧(太老实也不一定是件好事)
对于那些想进大厂的同学一定要刷算法题。对于我那些笔试挂了的,应该都是算法题没做好,尤其是字节跳动,它的笔试题就是五个算法题。
上面的内容里内心戏(废话)比较多,其实笔者真的比较菜,标题不是自嘲。这个Offer在很多大牛看来很普通,一般只是作为备胎。但对于笔者来说真但不太容易,自己也很满意了,我拿到offer后,没有怎么考虑,直接接受了offer,准备把学校的最后琐碎事弄好就过去就职。
下面放一些我在准备面试看的一些感觉很不错资料,也祝在找工作的小伙伴早日找到心仪的工作
Android进阶指南
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:Android)
最后
我的面试经验分享可能不会去罗列太多的具体题目,因为我依然认为面试经验中最宝贵的不是那一个个具体的题目或者具体的答案,而是结束面试时,那一刻你的感受以及多天之后你的回味~
很多人在刚接触这个行业的时候或者是在遇到瓶颈期的时候,总会遇到一些问题,比如学了一段时间感觉没有方向感,不知道该从那里入手去学习,对此我整理了一些资料,需要的可以免费分享给大家
在这里小编分享一份自己收录整理上述技术体系图相关的几十套腾讯、头条、阿里、美团等公司的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。
【Android核心高级技术PDF文档,BAT大厂面试真题解析】
【算法合集】
【延伸Android必备知识点】
【Android部分高级架构视频学习资源】
**Android精讲视频领取学习后更加是如虎添翼!**进军BATJ大厂等(备战)!现在都说互联网寒冬,其实无非就是你上错了车,且穿的少(技能),要是你上对车,自身技术能力够强,公司换掉的代价大,怎么可能会被裁掉,都是淘汰末端的业务Curd而已!现如今市场上初级程序员泛滥,这套教程针对Android开发工程师1-6年的人员、正处于瓶颈期,想要年后突破自己涨薪的,进阶Android中高级、架构师对你更是如鱼得水,赶快领取吧!
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》,点击传送门即可获取!
droid精讲视频领取学习后更加是如虎添翼!**进军BATJ大厂等(备战)!现在都说互联网寒冬,其实无非就是你上错了车,且穿的少(技能),要是你上对车,自身技术能力够强,公司换掉的代价大,怎么可能会被裁掉,都是淘汰末端的业务Curd而已!现如今市场上初级程序员泛滥,这套教程针对Android开发工程师1-6年的人员、正处于瓶颈期,想要年后突破自己涨薪的,进阶Android中高级、架构师对你更是如鱼得水,赶快领取吧!