“你的优势是什么?”多年前我觉得这个问题很无聊,现在我经常这么问面试者,因为我真的想知道他的优势是什么,能给公司带来什么。
最后我发现找工作时有个有趣的现象,经常是:懂沟通的人先找到工作,而不是技术最牛的那个。
一面
-
viewBinding的原理
-
Recycleview滑动怎么优化
-
缓存设计
-
一级缓存和二级缓存的区别
-
LayoutManager原理
-
绘制
-
onMeasure描述一下
-
onDraw描述一下
-
invalidate一定会调用onDraw么
-
事件分发
-
事件是由谁分发的
-
fragment
-
销毁与恢复
-
与Activity的通信
-
Activity
-
Activity的生命周期
-
销毁与恢复
-
国际化插件
-
hashmap
-
2^n的原因(有多个原因)
-
扩容
-
22反转链表
二面
-
协程原理
-
rxjava原理
-
leakcanary
-
如何分析引用链
-
线程池
-
给你一堆数据,如何画曲线?
-
事件分发
-
责任链模式
-
汽车加油问题
三面
美团
一面不能讲4.4.0大改版
一面
-
线程池原理,几个参数
-
线程池里面的阻塞队列是什么类型
-
设计模式
-
状态模式和策略模式的区别
-
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被复用了
-
一张图片占用的内存大小
四面
-
动态加载一个recycleview item的方式
-
动态下发国际化
-
阿里(简历被捞了 淘宝特价版)
-
进程通信方式了解哪些
-
binder原理
-
服务端了解么
-
View的显示原理?
-
Https原理