Android实习面经
Android实习面经
看了大家不少的面经了,把面试经历分享出来。这次面试准备了很久,结果不是很理想。更大的原因是在自己,基础不够牢固,有些好高骛远。
面试情况如下:
- 百度->没有音讯
- 腾讯->二面挂
- 阿里->二面挂
- 头条->一面挂
- cvte->HR未回复
- 挖财->二面过
- 网易->offer
笔试情况:
- 360->笔试挂
- 网易有道->筛选中
- 美团->笔试挂
- 携程->内推挂,笔试通过
- 别的大大小小的公司,由于目前有offer了就没有再查看了。
公司
阿里巴巴
首先是阿里的面试。阿里是我最希望加入的公司,但是面试猝不及防,第一家面试的公司就是阿里了。一面3.5,二面3.15,挂掉4.6。
一面:
实在太紧张了,逻辑混乱到爆棚,很多东西没有去说过,就导致说出来和想的不一样,也因为紧张,发挥的很不顺利。
- 什么是JVM(java虚拟机,能运行多种语言)
- 什么是四大组件,什么是Service
- 设计模式
- 什么是多线程机制
- 垃圾回收机制(核心思想->标记清除)
- 把知道的关于Binder的全讲出来(这个问道了BpInterface、BnInterface,讲了RefBase面试官不太满意,还好最后有提及)
二面:
状态还好,挂掉主要因为一面表现评级不高,二面自己作死(本来讲了一个框架是加分项,然后说,这种设计方法很精妙,那些人真diao,要是我肯定写不出来。面试是一个给面试官展示实力的过程,不是你给面试官展示谦卑的过程。说话要仔细想!!!过脑子!!!)
- 介绍项目亮点
- glide的流程+lru***+linkedhashmap
- okHttp
- 类加载机制
- 垃圾回收机制
- 弱引用和软引用的区别
- 热修复,这个没有答好,很实诚的说自己只看过Tinker并且没有看太明白,对于主流框架看了博客(面试官说Hotfix不止是method hook)
腾讯
腾讯的面试,早早的找学长内推了腾讯,然后自己不了解各个部门的差别,就选的无意向。内推时没有被筛选出来,自己去霸面成都,止步二面。体现出来自己的能力确实不够格。
一面:
- 实习项目的协议实现,LV
- 传递报文采用二进制,面试官想我推荐了Protocol Buffers
- 自定义view
- 阅读了什么的framework,解决了什么bug
- 跨进程通信 aidl binder
- 垃圾回收机制
- 引用
- 可达性分析,引用计数。这个面试官不是Android开发的。向他解释了一下两者的区别。
- 消息处理机制 handler message epoll ,这块聊得蛮久,但是总是get不到点,面试官表示,这个就是chrome内核里面的
- 小碎片内存优化,我表示只知道老年代会整理,具体不知道如何实现。我给他讲了binder的内存分配,使用两棵红黑树管理,如何拆分,如何还原这样的情况,面试官比较满意。
- 做了简单的两道算法题。谈了谈我对hashmap的理解,如何更散列。
- 聊了聊未来的规划以及愿不愿意做其他的开发。
二面:
二面很简单,问了我什么学的好。我说操作系统,问我堆栈的区别,不会。手写了二叉搜索树的插入。问了问项目亮点,然后就说可以走了。自己都知道会挂掉,直接买了当天中午的车票。
觉得自己能力还是有些欠缺,面试官是这么说的:“只会Android和Java不足以加入腾讯”。就这么和腾讯失之交臂。
头条:
个人感觉头条的面试官是最好的,面试体验也相当棒,不会也会给讲出来什么原理之类的。一面挂了,体验很好。有生之年一定要进入头条工作。
一面:
- HandlerThread
- handler
- Http响应报文
- 泛型使用场景、通配符(List 表明了List中元素的类型参数类型不确定,只读,不能向List类型中add元素,比List类型要安全。List List都可以赋值给List)
- 值传递(此处推荐)
- activity启动模式
- 启动流程
- service
- broadcastReceiver
- Intent-filter 实现singletask
- 事件分发 action_move up cancel
cvte:
两次面试都比较简单,第二次面试体验不太好,声音嘈杂,然后HR面试像调查户口一样问,心里很不舒服。
一面: 介绍项目,项目细节 handler
- aidl
- 设计模式 强弱软虚 activity启动模式 gc
二面:
面了一些比较基础简单的问题。写了一个算法 用三个hashmap。很轻松
挖财:
挖财在我看来是一家很不错的公司,也很有前景,在面完挖财二面后网易HR发了口头offer,也是有些可惜吧。
一面:
- 消息处理机制
- 事件分发机制
- 设计模式
- binder
- 启动模式
- 垃圾回收
- 类加载时机
- 锁、多线程
- static、final 这里讲一下 static会让类失去多态性
- 讲了讲项目
二面:
聊了聊项目内团队合作,性能优化(此处极力推荐VB大大的移动网络性能优化的知乎live( https://www.zhihu.com/people/van-bruce/answers )) ,然后问问别的问题,面试官表示欢迎来杭州玩一玩。
HR:
还没有HR面,估计会拒绝这家公司吧,还是蛮可惜的。
网易:
网易的offer是最没有想到的,一面二面都挺简单的。就不放出来了。和上面大同小异。
完结
总结一下,面试收到的面试邀请较少,非985,211。没有名企实习经历,很大的硬伤。自己自身能力也很欠缺,基础不够好,日后要加强这方面。还有就是面试的时候发挥,一定要调整好状态。腾讯二面的时候,已经快饿晕了,脑子转不动。还有一些别的坑:
- 千万别说自己肯定写不出来这样的话,很讨打
- 哪怕是问,也要选一个部门
- 看清总题数,看清总时间
- 误入了别人的后花园,却以为收获了整个夏天
- 谦卑、保持谦卑
- 别给hr说自己还有别的面试(差点以为网易挂在这上面,还好没有)
- 基础很重要!!!基础实在太差!!!
最后祝愿所有同学都能收获自己心意公司的offer吧。秋招再见。
#阿里巴巴##腾讯##网易##字节跳动##广州视源电子科技股份有限公司##安卓工程师#