大厂的Android面试题整理

话不多说,直接上干货。

某知名在线教育公司

  1. 介绍一下自己项目中MVP如何实现;
  2. 自定义View流程;
  3. 说说项目中遇到的性能优化、内存泄漏和内存溢出;
  4. native和h5交互怎么做;
  5. 事件分发流程;
  6. http、https的区别,post、get区别;
  7. 算法:两个单链表相交,求相交结点;
  8. 算法:获取单链表倒数第k个元素;

著名安全类公司

  1. Activity的启动模式和应用场景;
  2. Handler机制以及与Message等之间的关系;
  3. 与Service通信的几种方式,进程间通信和进程内通信的区别;
  4. 手写代码实现线程死锁;
  5. 手写两种单利模式,并讲出优缺点;
  6. 如何实现RecyclerView的侧滑删除;
  7. http、tcp/ip基本认识,post和get区别;
  8. 内部类为什么会造成内存泄漏;
  9. 怎样给RecyclerView加header和footer,为什么可以这样;
  10. RecyclerView如何实现复杂布局;
  11. 算法:一个整型数组中,只有两个数出现一次,其余均出现两次,找出这两个数,给出时间复杂度;

著名求职类公司

  1. View的回执流程,onMeasure方法的三种模式;
  2. 画出Window的层次结构;
  3. Handler、Looper原理;
  4. 说一下自己设计的图片框架;
  5. Glide源码;
  6. 对RxJava的理解;
  7. 事件分发机制,TouchEvent的down、up和move;
  8. 项目中如何实现热修复,或使用了哪个热修复库;
  9. 手写实现数据库SQLiteOpenHelper;
  10. ActivityThread的main方法中做了些什么;
  11. 内存泄漏的原因,常见场景和如何处理;
  12. 布局优化,如何防止过度绘制;

一个名字听起来巨有钱的公司

  1. RxJava的优劣势;
  2. home/user/a/../b/./c所代表的的路径,手写代码输出绝对路径;
  3. 对系统相机的了解;
  4. View的回执流程;
  5. Glide源码,介绍自己的图片框架;
  6. 手写实现快速排序;
  7. 介绍代理模式;
  8. MVC、MVP各自特点和优缺点;

知名在线借款公司

  1. Activity的生命周期,启动模式;
  2. 如何实现多个Activity同时展示;
  3. 手写单例模式并解释为什么这样写;
  4. 如何防止过度绘制;
  5. 介绍下你阅读过的源码;
  6. 磁盘缓存怎么实现;
  7. JVM垃圾回收机制;

某大厂下的外卖团队

  1. 介绍Activity任务栈;
  2. RxJava原理,RxJava同时执行5个任务,是并行还是串行;
  3. Activity的启动过程;
  4. View的绘制过程,onMeasure方法中两个参数的含义;
  5. 自己封装过什么框架,介绍一下原理;
  6. ListView和RecyclerView的优化和区别;
  7. 如何为RecyclerView的Adapter设置监听,说出最好方案;
  8. 介绍一个自己做过的最满意的东西;
  9. 泛型中 ? 表示什么含义,若加入不满足条件的类型会怎样;
  10. 单例模式中的双检锁,如果把类锁换成内部声明的另一个类,效果会怎么样;

更多精彩内容,关注我的微信公众号——Android机动车
这里写图片描述

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jiashuai94/article/details/79979055
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭