2021新鲜出炉阿里巴巴面试真题,一文轻松搞定
**一面**:
* 自我介绍
* 介绍一下自己做过什么项目 ps:这里会根据项目问一些问题
* 跨线程通信 主要涉及LooperMessageHandler以及MessageQueue
* 说一下自定义View需要注意哪些细节 主要说了一下View绘制的三大过程onDraw()不要做耗时操作 不要创建新对象 以及 怎么处理View的触摸事件
* View的事件冲突的解决办法 ps:重写dispatchEvent()或者touch()方法
* 手写代码:给你一个无限大的数(用字符串表示),计算这个数加一以后的结果 手写代码在[这个网站](https://link.zhihu.com/?target=https%3A//links.jianshu.com/go%3Fto%3Dhttp%253A%252F%252Fcollabedit.com%252F)进行 ps:面试官发给你一个链接 你写代码面试官会同步看到
**二面**
* 手写代码 两个有序链表合并成一个有序链表
* Object中有哪些公有方法 ps:clone();toString();wait();notify();getClass();finalize();equals();hashCode();
* 讲一下listView的优化方法
* 讲一下RecycleView与listview的区别
* view的绘制过程
## 阿里
* 问了一下大体情况 比如什么时候可以实习啊 考不考研啊
* 都会什么算法 讲一下
* 做过什么项目没有 讲一下项目优化的地方
* Activity的启动模式
* 跨线程通信
* 夸进程通信 主要是Android的AIDL
* 如何解析json数据和xml
## 蘑菇街
* 说说做了什么项目
* 自定义view的几个步骤 怎么刷新view ps:onLayout(); onMeasrue();onDraw();
* RecycleView的优化
* 几种context的区别
* 看过什么源码没有
* 讲一下binder类
* Runnable运行在哪个线程里面 ps:开启一个子线程的唯一方法就是new Thread().start();
* HashMap和HashTable的区别
* raw和assets文件夹的区别
* activity关闭后尚未运行完毕的thread会怎么样 ps:会变成空进程线程,优先级最低 很容易被终止回收
* mainfest文件的合并规则
## 网易
网易内推后笔试,过了笔试后去杭州面试 ps:报销来回车费 报销上限是600元 这个回来没记 可能不全
**一面**:
* 自我介绍
* 跨线程通信
* 讲了其中一个项目是怎么实现的 问jsoup怎么拼 = =
* 用过哪些开源库 讲一下他的架构是怎样的
* java的四种引用 虚引用的作用
* 图片三级缓存 内存缓存满了怎么办 ps:优先级队列 满了后根据优先级主动删除一部分图片 根据LRU算法确定优先级
* 讲一下JNI开发的过程 java怎么找到c函数 ps:JNINativeMethod保存函数对应关系
* 平时有什么爱好没有 = = ps:潜泳 可以潜好几天 然后自己浮上来
**二面**:
* activity的四中启动模式
* service的生命周期
* 讲一下自己的项目
* 项目中用JNI做什么 为什么要用他呢
* 什么是OAuth协议 做什么的
* 其他的记不清楚了
**hr面**:
* 什么时候可以来实习 实习多久
* 多个offer怎么选
* 你有团队开发经验 内部冲突怎么解决
* 你觉得杭州怎么样
* 为什么选择网易
* 用过网易什么产品 ps:吃过网易猪肉
* 其他忘记 好像聊了好久 得一个小时吧
![](http://www.icode9.com/i/li/?n=2&i=images/20210707/1625669435782003.jpg)
![](http://www.icode9.com/i/li/?n=2&i=images/20210707/1625669436383707.jpg)
### [点击这里免费领取吧!](https://github.com/a120464/Android-P7/blob/master/Android%E5%BC%80%E5%8F%91%E4%B8%8D%E4%BC%9A%E8%BF%99%E4%BA%9B%EF%BC%9F%E5%A6%82%E4%BD%95%E9%9D%A2%E8%AF%95%E6%8B%BF%E9%AB%98%E8%96%AA%EF%BC%81.md)