总算找到个不错的工作,决定入职了。
大厂和小厂都去了不少,像猎豹、58、小米、百度、国美、京东都去看了看。
过了二三面其实最后就是看缘分了,有的就很顺利。保持平常心就好。
跳槽前,建议刷一遍leetcode。
下面是具体的情况汇总,给Android的小伙伴分享些经验。
大厂面试一般一二面都不会问Android 相关,更注重Java、网络、数据结构、集合知识,会按照自己的题库节奏来。比如:
hashmap、concurrenthashmap原理必问、
JVM内存模型,(GC新生代老年代算法)、
锁必问(看你掌握的深度了)cas问题,volatile问题、
http1.0,2.0区别,https内部实现过程(对称加密+非对称加密)、
基础完了之后会根据你的简历中某个项目,查看你对知识的分析和研究过程。
最后是一两道算法题。
中型企业(像是好未来、学而思...)更爱问一些基础知识+偏的知识,比如:
handler里涉及的ThreadLocal的实现(里面有个WeakReference问题),同步屏障、target。
然后会问一些Android通用知识,比如绘制流程、事件传递(注意onTouch+onClick)
线程池、线程通信,(比如子线程需要个looper就常问到)
一些日常比如线上日志采集,跟版本适配等。
最后是一两道算法题。
中小型企业 一般是以Andorid基础开始,然后看你对于简历上第三方库源码的了解
比如:一般以ANR、内存泄漏等开始。四大引用等。
然后问你在项目中做了哪些事,深入分析。内存优化、内存泄漏等等
最后是一两道算法题。
感觉设计模式前几年问的很多,最近只有几家厂问过。可能不火了吧。
最后祝大家都能找到好工作!