2016年4月10日晚上我接到初试的通知,当时也知道表哥已经内推进了微信,敬佩之余也要奋发图强,要拿一个offer回来。当晚看了一下项目源码,看了一会jvm以及android listview的缓存机制便睡觉面试。
4月11日上午11点,由于HR的过早通知,导致在师兄门口呆了半个小时。11点半准备一面,得知我做得项目其中有一个是关于华工食堂的,师兄觉得特别好玩,才透露出他是我直系大师兄的身份~其中面试挺轻松的。
面的问题有以下:
1.项目的难点是什么?我说了一堆,然后举了一些例子。根据项目问了一些问题。
2.android如何进行缓存?lrucache等。
3.写过自定义view没有?(写过)view的生命周期是什么?(....sorry 只记得几个)
4.看过android源码没有 = =!
5. 看过c++ 库函数源码没有 = =!
6.写一下map的实现 (写了一堆伪代码)
7.tcp的三次握手,tcp在android的应用。
8.弱引用和软引用区别是什么? 答的不是很好。
9.activity的生命周期?oncreate()时activity在前台吗?oncreate()中用来干嘛?
10.写一下多态的实现。(师兄有题目= =)。有一些毛病
最后就聊了一下生活以及学习,要看些什么书籍之类的。
10号晚上面试状态就变成了复试,11号晚上接到通知去面复试。(然后发现了初面的师兄是总监= = 渣工毕业生)。12号下午2点去面试。面试前一天晚上看的是jvm,感觉发虚。结果面试问的都是原理然后赤果果的跪了。
1.项目的难点是什么?你解决了什么?
2.讲到了lrucache,你把整个lrucache写出来。(.....瞬间崩盘,只会运用的东西写源码醉到不行....按照自己的想法写了一个,然后被虐了)
3.写错了,你看过android源码吗?(...没有,我找解决方案是靠技术博客或者实验)
4.别人的博客有错那你项目不是也错吗?不看源码怎么做项目。(........)
5.写一个快速排序给我看看。(...写了出来没什么问题,但是太潦草涂改太多,要改)
6.初试面试官评价你数据结构不错,你谈一下arraylist和linkedlist在内存的分布以及各种操作的对比(.....答得不好)
7.gc()的原理。(easy)
8.为什么选择sng?(从家庭个人原因阐述)
最后谈了一下看源码的方法。
二面面了一个多小时,虐的我欲仙欲死,后来出来几分钟后发现面试状态从复试变成了....=- =哎,都是辛酸泪。自己实力不行,没看过源码,原理搞不懂,长得又难看被刷很正常咯。
好好学习,天天向上。