最近,有个读者联系了我和我诉说了最近他面试碰到的一件很气愤的事情。为什么方便就称呼小华了。
小华目前是三年Android开发,从上个月就开始一直在找工作,因为今年的大环境不好,面试的时候也是处处碰壁,面一家挂一家,面完之后怀疑自我,是不是自己真的太菜了找不到工作。但是也没有气馁多久,又开始面试以及分析总结。
但是在15号和一名某大厂HR聊天发生了争吵,原因是某大厂的HR说出了“现在二本的程序员都排不到面试,能约到面试算你烧高香了”的话,引发了小华的十分不适,便在之后与之发生了长达10几分钟的对骂。
说实话我当时也不敢相信现在还有这样的HR,不应该呀,虽然之前刷视频也看到过,自己也总以为是剧情。后面我又问了不少人关于HR的话题,都是一些不太好的评价,总的来说就是
以前是HR求着我们面试,现在反过来了,很多hr的措辞就不怎么好了。当然这种人应该也不多,希望大家面试的时候不要遇到。
小华在抓住6月的尾巴,成功通过了科大的面试。他也说虽然现在工作没有以前好找,但是要提前做好面试准备,找工作也没什么问题,尤其忠告像他这样蛮久没有出来面试的程序员,一定要做好准备再面试,以前的面试和现在不一样了。
这个确是是这样的,很多一年没有面试的朋友,刚刚离职面试可能会遇到这个问题,有不少公司注重的技术不一样或者已经变了。
为了节省大家收集资料的时间,我为大家分享最近整理的一份大厂面试题
最后有面试题详解,省时间的可以直接拉到最下面
快手
一面
-
viewBinding的原理
-
Recycleview滑动怎么优化
-
缓存设计
-
一级缓存和二级缓存的区别
-
LayoutManager原理
-
-
-
绘制
-
onMeasure描述一下
-
onDraw描述一下
-
invalidate一定会调用onDraw么
-
-
事件分发
- 事件是由谁分发的
-
fragment
-
销毁与恢复
-
与Activity的通信
-
-
Activity
-
Activity的生命周期
-
销毁与恢复
-
-
国际化插件
-
hashmap
-
2^n的原因(有多个原因)
-
扩容
-
-
22反转链表
二面
-
协程原理
-
rxjava原理
-
leakcanary
- 如何分析引用链
-
线程池
-
给你一堆数据,如何画曲线?
-
事件分发
-
责任链模式
-
汽车加油问题
三面
-
有序无序时删除链表的重复节点
-
都删除
-
保留一个
-
-
如何实现快手和抖音的整屏滑动效果
-
如何让运营能看懂社区文章
-
项目中的难点(问得很细)比如有没有遇到什呢难点呀
美团
一面
-
线程池原理,几个参数
- 线程池里面的阻塞队列是什么类型
-
设计模式
- 状态模式和策略模式的区别
-
sleep和wait的区别
-
android序列化
- Parcelable与Serializable
-
Handler
-
Hashmap
-
深拷贝与浅拷贝
- 如何实现深拷贝
-
sync和Reenterlock
- 遇到异常的区别
-
可重入锁和不可重入锁
- funA,funB,funC,funD
-
postInvalidate和Invalidate的区别
- requestLayout
-
两个有序链表合并
-
anr 分类及原理
二面
- 基本都是问的项目
支付宝
一面
-
项目
-
viewmodel原理
-
用了哪些jetpack的东西
-
livedata为何具有生命周期感知能力
二面
-
shareperference如何保证线程安全,
-
为什么不是进程安全的
-
如何实现进程安全的
-
-
viewmodel是如何解决内存泄漏问题的?能解决么
-
mmkv共享内存和binder的区别
-
magic ocr项目
-
有做过多线程开发么
-
room如何实现orm的
-
kotlin和java产物一样么有
-
各种图片格式的区别
-
如何保证内存与文件的同步
-
开一个线程commit,commit不用加锁么?
-
bitmap
-
怎么确定bitmap被复用了
-
一张图片占用的内存大小
-
下面是字节面经:
一面
-
MVC,MMVM,MVP
- MMVM如何解决MVP中存在的问题
-
内存泄漏
-
内存泄漏的几种情况
-
LeakCancary分析内存泄漏的原理
-
-
手写单例模式,并分析
-
算法
- 找到两个数组中的两个元素的和等于某个值
二面
-
activity
- onSaveInstance
-
service
- StartService和BindService的生命周期
-
求浮点数的平方根
-
Binder的原理
-
设计模式
-
工厂模式
- 抽象工厂模式和普通工厂模式
-
建造者模式
-
-
启动模式有几种
-
共享内存原理
- java能实现共享内存么
-
kotlin协程的四个dispatcher及区别
三面
-
window,decorview,ViewRootImpl的关系
面试官 想让你回答如何window和windowManager如何联系的。viewRootImpl是联系window和decorview的纽带 -
进程间的通信方式
-
AIDL的用法
- 用法和原理
-
事件分发
-
onIntercept在哪用
-
事件分发底层的产生
-
-
RecycleView的用法
- 里面的各种Manager作用
-
wake lock:使屏幕常亮
-
Activity是如何被限制到状态栏和导航栏之下的
-
canvas
-
canvas的save和restore的作用
-
canvas的density有什么作用
-
-
vsync
- vsync是如何生成的
-
android中异步一般怎么实现
-
android中内存泄漏发生的情况
-
如何去获取view的宽高
-
悬浮窗
-
如何实现一个悬浮窗
-
一个悬浮窗悬浮在顶层,覆盖了底层的app的启动图标,如果让事件启动图标接收到click事件
-
-
Android M之前与之后的权限变化
-
ContentProvider
-
使用
-
如何找到该contentProvider的
-
-
RxJava中map和flatmap的区别
-
view的绘制
-
viewgroup是如何刷新的
-
onMeasure,onlayout,onDraw分别起什么作用
-
onLayout的时候可以layout自己么?
-
-
AndroidManifest
- 和的区别
一个是系统的权限,一个是自定义的权限
- 和的区别
四面
-
两道算法
-
洗牌问题
-
接雨水
-
-
两道设计
-
面向对象原则
-
用代码描述你觉得最有设计感的项目
-
完整版文档已整理打包,需要的伙伴们可扫描下方二维码+v私聊哦~
↓↓↓【预览】↓↓↓