Java部分
JVM虚拟机及GC垃圾回收机制
GC ROOT对象有哪些?
ClassLoder类的加载机制
Java内存模型, volatile的作用
同步锁Synchronized与ReentrantLock区别
多线程,线程池
JVM,DVM与ART的区别
ThreadLocal使用原理
String str = new String("abc")创建了几个对象?
HashMap,LinkedHashMap
ArrayList,LinkedList
网络部分
7层或5层网络模型
为什么TCP三次握手及四次挥手
HTTP与HTTPS的区别
HTTPS的加密过程
HTTPS一定是安全的吗?
Android部分
Handler机制,同步屏障,异步消息
View的绘制流程
事件分发机制
Binder机制
RecyclerView的缓存机制
Okhttp, Glide源码及设计模式
Bitmap优化
SharedPreference使用存在的问题,以及apply和commit的区别
序列化Serializable与Parcelable的区别
Activity的启动流程
Window, Activity,View的关系
Android App的安装流程
性能优化
内存泄漏的场景及检测,以及解决方案
LeakCanary原理分析
AMS,WMS,PMS
模块化,组件化与插件化
跨平台
Flutter和React-Native区别
如何选择跨平台方案
ReactNative性能优化
算法
时间复杂度与空间复杂度分析
冒泡排序,归并排序、快速排序
二叉树的层序遍历(力扣102题)
合并有序链表
剑指Offer04. 二维数组中的查找
设计模式
单例模式
双重校验锁单例为什么要两次判空?
6大设计原则