2017届 百度校招内推Android面试之失败篇
2016-09-02 本文已影响1419人
Hello_Google
记录百度校招内推面试经历,废话不多说,直接上问题(内推了这么多,各种失败,心碎了一地,拾掇拾掇,重新出发)
一面(电面)
- 讲讲性能优化、布局优化的经验;
- 讲讲 Gradle 语法、生命周期;
- 讲讲 Java 泛型、什么场景使用;
- 讲讲注解,有没有了解过哪些新技术在应用,自己使用过没;
- 讲讲项目中自己最难忘的点;
- 讲讲 Android 数据库的相关操作,两个表合并怎么实现;
- 了解 aar 文件没,有没有遇到什么坎;
- ListView 和 RecycleView 的比较;
- 数据加载更多涉及到分页,你是怎么实现的;
- Instant Run 玩过没,AS 的版本是多少;
- 网络框架用了哪些,讲讲使用的框架的原理;
- 项目用到了哪些第三方控件,EventBus 讲讲,优缺点,有没有考虑过如何消除缺点;
- 讲讲事件分发机制;
- 服务器和前端交互用的什么数据格式,有没有用过除了 JSON 格式之外的;
- 数据解析用的什么;
- 音视频的开发过程中,有哪些坑踩过;
- 视频的筛选是使用了什么方法实现的;
- 讲讲注解,有没有自己实现过,优缺点。
二面(现场面)
- 现场写 Activity 和 Fragment 的声明周期,Home 和 Back 键的生命周期;
- 写 Service 的两种实现方式和生命周期;
- 静态同步方法和非静态同步方法的区别;
- Get 和 Post 的区别;地址
- 单例的双重检验的实现方式;
- volatile 的作用;
- 进城和线程的区别,Android 多进程如何实现;
- 子线程更新UI的方式;
- Handler 的实现机制,画图讲解;
- Java 静态变量在 new 的对象中会不会更改;
- TCP 和 UDP 的区别,TCP如何保证可靠性传输,手写一下三次握手的过程;
- HTTPS 和HTTP 的区别,S是什么;
- HTTP 的底层实现是什么;
- 堆存放什么,栈存放什么,地址,安卓虚拟机的内存模型是什么;
- equals 和 hashcode 的关系;
- 安卓内存泄露检测以及解决方案;
- Hashmap 的源码和实现方式;
- 写代码实现队列的基本操作,外加查找最大值;
- Linux 玩的转不;
- 讲讲线程池;
- 如果加快 Gradle 的编译速度
三面(现场面)
- 团队协同管理是如何进行的
- 个人在技术、团队管理的经验、优势、劣势;
- 个人在未来一段时间内的发展规划;
- 如何推动项目组采用一些新技术;
- 团队的沟通如何进行;
- 团队分配的任务如何完成、时间如何安排;
- 加班如何看待;
- 实习初始,是如何融入到团队的,是如何快速了解整个项目的;
- 评价自我的实习情况