版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lijia1201900857/article/details/79994838
最近离职了,然后前后面试了10多家公司,记录一下其中比较印象深刻的问题。
公司1:
1、按下home键,activity的生命周期。
2、asynctask 的机制。是并发处理的?
3、Gson 解析数据时,有字段为null ,怎么处理?
4、Gilde() .with (),方法,传入不同的上下文时的区别?
5、Binder 机制
6、AIDL 机制
7、进程间通信
8、listview除了复用布局,还有那些优化?
9、大图加载优化。
10、如何判断图片是横屏还是竖屏拍摄的
公司2:
1、JDK 1.7 和1.8 的区别?
2、你的项目中,是如何对OKhttp3 封装的?
3、Butterknife 实现原理?
4、做过哪些自定义View? 如何实现的?
5、onMeasure 中有哪两个方法?
6、事件分发机制
7、项目中的内存优化是具体怎样做的?
8、recycleview 怎样实现的?
9、MVC、MVP 的区别?
10、屏幕适配
11、用过哪些三方数据库?
12、Binder机制
13、手写单例模式
14、手写防止Handler内存泄漏的写法
公司3:
1、自己实现网络加载。
2、数据库多表查询语句
3、怎么实现文件上传,具体实现。
4、JS 如何互相调用?
5、继承一个Button,能够复写的方法有哪些?
6、Service 如何停止?如果不手动停止,自己会停止吗?
7、热修复能够修复哪些东西?可以对整个类进行修复吗?
8、如何实现异常捕获?