前言
LZ双非一本毕业,Android开发三年了。本来一直混迹于各色小厂摸爬滚打,今年由于疫情肆虐,互联网行业及其不稳定。于是萌生了去大厂的念头,虽然压力大,但至少不用面临公司时刻倒闭的问题。
由于LZ平日有着较为良好的积累的习惯,会把网上一些优质的面经、大厂真题收集整理起来,所以,从小长离职后,我就将自己平时收集的面经真题系统的复习,消化了一遍。吃透这份PDF花了我半个多月时间。之后便先后收获了阿里、字节跳动、美团等多家大厂的offer。
想到很多和我一样的在2020年有跳槽的想法的人。所以,我针对Android中高级开发者面试跳槽的需要,,我将自己近两年来收集整理的《Android 中高级面试真题集锦》分享出来,可以省去大家不少时间去搜集整理,提高面试准备效率。
能力有限,如有错误,恳请评论指正。
Android 中高级面试题集整理目录
一、Java 基础部分
二、Jvm部分
三、计算机网络部分
四、Android中高级面试题
五、Android Framework 相关
六、性能优化专题
七、算法合集
八、kotlin 专题
九、flutter 专题
十、JNI 模块专题
GitHub免费下载地址:github.com/Timdk857/An…
java相关
-
HashMap 和 HashTable 以及 CurrentHashMap 的区别。
-
synchronized 和 volatile 、ReentrantLock 、CAS 的 区别。
-
JVM 类加载机制、垃圾回收算法对比、Java 虚拟机结 构等。
-
Java 的四大引用
-
Java 的泛型,<? super T> 和 <? extends T> 的区别。
-
Java 线程有哪些状态,有哪些锁,各种锁的区别。
-
final 、finally、finalize 区别。
-
接口和抽象类的区别。
-
sleep 、wait、yield 的区别,wait 的线程如何唤醒它?
-
java 中==和 equals 和 hashCode 的区别
jvm相关
1.Jvm 内存区域是如何划分的?
2.Jvm 内存模型是怎么样的?
3.String s1 = "abc"和 String s2 = new String("abc")的区别, 生成对象的情况
4.如何判断对象可回收?
5.GC 的常用算法?
6.Minar GC 和 Full GC 的区别?
7.说一下四种引用以及他们的区别?
8.类加载的过程?
9.类加载的机制,以及为什么要这样设计?
计算机网络部分
1.TCP 与 UDP 的区别。
2.三次握手、四次挥手。为啥是三次不是两次?
3.HTTPS 和 HTTP 的区别。HTTP 2.0,3.0?
4.浏览器输入一个 URL,按下回车网络传输的流程?
5.TCP 建立连接后,发包频率是怎样的?
6.如何验证证书的合法性?
7.https 中哪里用了对称加密,哪里用了非对称加密,对加 密法(如 RSA)等是否有了解?
8.client 如何确定自己发送的消息被 server 收到?
Android 中高级面试题
1、什么是 ANR 如何避免它?
2、Activity 和 Fragment 生命周期有哪些?
3、横竖屏切换时候 Activity 的生命周期
4.AsyncTask的缺陷和问题,说说他的原理。
5.onSaveInstanceState() 与 onRestoreIntanceState()
6.android中进程的优先级?
7.Bunder传递对象为什么需要序列化?Serialzable和Parcelable的区别?
8.动画
9.Context相关
10.Android各版本新特性
11.Json
12.android中有哪几种解析xml的类,官方推荐哪种?以及它们的原理和区别?
13.Jar和Aar的区别
14.Android为每个应用程序分配的内存大小是多少
15.更新UI方式
Android Framework 相关
1、Android 系统架构
2、View 的事件分发机制?滑动冲突怎么解决?
3、View 的绘制流程?
4、跨进程通信。
5、Android 系统启动流程是什么?(提示:init 进程 -> Zygote 进程
6、启动一个程序,可以主界面点击图标进入,也可以从一 个程序中跳转过去,二者有什么区别?
7、AMS 家族重要术语解释。
8、App 启动流程(Activity 的冷启动流程)。
性能优化专题
1.App稳定性优化
2.App启动速度优化
3.App内存优化
4.App绘制优化
5.你是怎么做卡顿优化的?
6.网络优化
7.App电量优化
8.安卓的安全优化
算法合集
1.排序
2.二叉树
3.链表
4.栈/队列
5.二分
6.哈希表
7.堆/优先队列
8.二叉搜索树
9.数组/双指针
10.贪心
11.字符串处理
12.动态规划
13.矩阵
14.二进制、位运算
kotlin、Flutter NDK专题
GitHub免费下载地址:github.com/Timdk857/An…