目录
- 前言:
- 面试题:
- 百度一面:
- 百度二面:
- 普渡科技一面:
- 普渡科技二面:
- OPPO一面:
- 平安一面:
- 快手一面:
- 腾讯一面:
- 涂鸦一面:
- 涂鸦二面:
- 货拉拉一面:
- 商汤一面:
- 商汤二面:
- 顺丰一面:
- 常见面试题:
- 总结:
前言:
前段时间,被公司坑了一把,不得已出来找工作啊,经过两个多礼拜复习,匆匆上阵,两个礼拜把深圳(阿里、字节、虾皮简历没过)大厂基本面完了,当然挂面吃的饱饱的。正好今天有空,我把我遇到印象比较深的面试题分享出来,给大家参考。
面试题:
百度一面:
1、 onTouch->onTouchEvent->onClickListener 顺序
2、 投屏原理 Android7.1 Presentation
百度二面:
逻辑题:4分钟沙漏 7分钟沙漏 实现计时9分钟
普渡科技一面:
1、 Jetpack 组件
2、 Kotlin 高阶函数
3、 匿名内部类为啥持有外部类引用
普渡科技二面:
1、 GCRoot 内存泄露引用链描述出来
2、 启动器原理
OPPO一面:
1、Synchronized是可重入锁?
2、java浅拷贝、深拷贝
3、kotlin委托
4、argb_8888 rgb565区别 (透明度)
5、Compose是什么
平安一面:
1、内存泄露说出5种(web内存泄露、service任务执行完)
2、测量模式9种
3、kotlin委托
4、wait、sleep区别
5、线程状态
6、hash冲突
7、子线程死循环会ANR吗
快手一面:
1、Fragment生命周期、重叠问题
2、commitNowAllowingStateLoss
3、算法:手写单线程线程池
腾讯一面:
1、自定义相机
2、Surfaceview TextureView 区别
3、invalidate()原理
4、surface
5、HashMap SparseArray
6、Parcelable Serializable
7、多进程场景
8、算法:最长无重复子串
涂鸦一面:
1、核心线程为啥不会被销毁
2、davil art gc方法
3、算法:链表反转
涂鸦二面:
1、阻塞队列如何实现
2、泛型原理
货拉拉一面:
1、HTTP 1 HTTP 2区别
2、三次握手 四次挥手
3、算法:两个栈实现一个队列
商汤一面:
1、OKHTTP 重定向机制和缓存机制
2、JNI方法创建数组会内存泄露吗
3、api与implementation的区别
4、阿里路由的bug
5、Android进程间 大数据传递
6、算法:多数元素
商汤二面:
1、Linux进程调度
2、操作系统
顺丰一面:
1、元注解有哪些
2、单元测试
常见面试题:
1、Handler机制(深入原理)
2、Java多线程 锁 各种数据结构
3、应用启动流程
4、项目问题 经常遇到什么难点,如何解决的
5、性能优化
6、view绘制原理
7、设计模式以及应用场景
8、各种第三方框架源码
总结:
现在Android越来越卷了啊,要求越来越高,想找个不错的工作还是不容易的(大神除外),但相对来说工作机会还是不少的,只要你足够优秀。面了那么多试,整体感觉下来,以下三点比较重要:
1、Android基础和Java基础(平时一点一点积累,查漏补缺)
2、熟悉各种第三方框架源码和Framework AMS、PKMS、WMS流程(面试会问,特别是有的人喜欢问细节)
3、项目经验(没项目经验,谁敢要你)
4、常见八股文(网络基础、各种开源技术)
5、常见算法(大厂都考、LeetCode100刷透就够了)
最后一点我觉得挺重要的,就是保持自己的节奏啊,现在被哪些培训机构、自媒体搞得很焦虑,现在的文章大都是标题党,最后结尾要么卖课、要么分享啥资料,这也是我为啥加个无广告版的原因。