今年第二轮求职热潮即将到来,三月份没能如愿涨薪的程序员们可以抓紧上车了~
面试是个双向选择的过程,但对于求职者而言,拥有多高的技术水平,才能有多少选择。
每个程序员都不是全能的大神,总会有知识漏洞,但如果在与面试官浅聊的过程中,你就暴露了很多问题,比如基本技术点答不上来、深层原理一概不知,那面试注定要凉。因此,日常知识的积累非常重要,面试开始前的刷题更是必不可少。
以下是最新的美团Android开发面试题,且一起看一下~
一面:
1、res/assets区别,res下有哪些东西2、requestLayout/invalidate区别3、自定义View需要注意什么,过程onMeasure.onLayout.onDraw4、JVM回收,新生代老年代分别用什么算法,GC root有哪些5、什么是死锁,死锁的条件,避免死锁的方法6、变量i,线程A,B交替对i++7、 CAS实现上述过程8、静态内部类会是否有外部类的引用,普通内部类是否有外部类的引用
二面:
1.Android四大组件是什么2.service内中有looper吗?是谁创建的?3.广播有哪些分类?4.系统是如何实现有序广播的?5.广播接收器中的onReceive()方法中可以进行读取文件等IO操作吗?为什么?会发生什么?6.为什么会发生ANR?7.Android中如何进行进程间通信?8.如何使用Binder?9.如何创建线程,线程进程区别10.你的注解的理解,注解的作用以及原理11.内容提供器中增删改查的方法中如何操控数据?12.Java中如何创建和使用并发编程?13.Java如何解决线程间的资源竞争而避免死锁?14.同样是使用sycronized修饰,在修饰类和对象时,有什么区别?15.http与https 区别加密具体过程16.Java中集合类都有哪些数据结构?17.List和Map是如何实现扩容的?