美团Android一二面凉经
一面(30分钟):
0、实习期间公司项目,自己开发的项目
1、进程和线程的区别
除了常规的,还比较了一下两者调度的区别,进程是靠中断来使系统陷入内核态然后完成调度,线程是依靠JVM进行。
2、线程的状态。
新建、就绪、运行、阻塞、死亡。不小心把进程的僵死什么的给说了……还好面试官捞了一手
3、TCP属于哪个层、TCP三次握手四次挥手。
4、Activity生命周期,A启动B生命周期变化。
5、自定义View,需要重写哪几个方法。如果要你实现WIFI信号的显示,那么你会怎么做。
6、Android动画了解吗。
说了过渡动画,说了自己封装的ObjectAnimator工具类,以及MotionLayout相关使用、以及过渡动画实现共享Item的用法。
7、算法,打印2到100所有的质数,不要求效率,你输出就好了……
二面(1hour):
0、自我介绍
1、实习期间做的最成功的一件事,为什么觉得最成功。
2、针对具体的实习过程进行了讨论。
3、Java泛型。
4、为什么基本重写equals方法时也需要重写hashCode方法。
5、手撕生产者消费者模型,很惭愧……没撕出来。
6、成绩怎么样……LZ本科期间及其浪荡,成绩很差,然后面试官脸色就变了。心态就有点崩。
7、计算机怎么画一条线,底层怎么实现的。
8、PV原语。
9、排序算法。
10、树的遍历方式。
11、反问。
心得体会:成绩不好的同学需要谨慎回答关于成绩的问题,不要那么直白,是把双刃剑。华为面试的时候说自己成绩不好,但是有博客和github作为后期努力的支撑,面试官就还是很开心。LZ直到大三下学期才开始努力学习,确实浪费了很多时间。
收到了面试官的短信说挂了,难受,奉劝各位好好学习。