Java
Java基础
- 集合
- 反射
- 泛型
- 异常机制
经典文章
常见问题
- HashMap讲一下,数据结构、hash过程、扩容、加载因子为何是0.75等。
- LRU如何实现的?LinkedHashMap如何实现的?LinkedHashMap是否线程安全?如何实现线程安全?有序还是无序?
- ThreadLocal干嘛的?用法和原理。
- 泛型擦除,为何会有擦除?擦除的时机、为何会有协变和逆变
Java并发编程
- 线程的生命周期
- 线程池参数及常用线程池
- synchronized和volatile区别
经典文章
常见问题
JVM
- JVM内存模型
- 类加载机制。
- 类的加载过程(类的生命周期)
经典文章
常见问题
1、内存回收机制与GC算法(各种算法的优缺点以及应用场景);
2、内存泄露场景及避免和解决方法
Android
Android系统
- Android平台架构
- 进程间通信方式
- Binder机制
- Android系统启动流程
经典文章
常见问题:
1、Android系统启动流程 ?
2、Jvm、Art 和 Dalvik对比?
3、点击 Android Studio 的 build 按钮后发生了什么?
4、Android应用安装到手机上时发生了什么?
7、Android的 Inter-Process-Communication (IPC)跨进程通信?
8、Binder 机制?
11、SP是进程同步的吗?有什么方法做到同步;
12、SpareArray原理?
Android应用
- 进程和应用生命周期
- 任务和返回堆栈
- Service
- Android应用上下文Context
- ActivityThread、Instrumentation源码
- 四大组件启动流程
经典文章
常见问题:
- LocalBroadcastReceiver实现
- Android应用启动流程?
- Android进程和 Application 的生命周期及保活方案?
Handler
很多同学自以为已经非常了解Handler机制了,但你以为的真的是你以为的吗?
- Handler、Looper、MessageQueue
- 同步屏障
- IdleHandler
- AsyncTask、HandlerThread、IntentService的源码
经典文章
- Handler机制源码解析
- 老罗-Android应用程序消息机制
- Handler机制——同步屏障
- “看你简历上写熟悉 Handler 机制,那聊聊 IdleHandler 吧?”
- Handler 这些知识点你都知道吗
- Handler二十七问|你真的了解我吗?
常见问题:
UI架构
- View的绘制流程
- 事件分发机制
- WindowManager视图绑定
- Android屏幕刷新机制
经典文章
常见问题
滑动冲突如何解决?
xml加载流程
RecyclerView的缓存
1、Activity中Window的创建过程,DecorView的创建过程,DecorView的add过程
Activity的attach()方法中创建了PhoneWindow和WindowManager;
Activity的setContentView()创建了DecorView;
ActivityThread的handleResumeActivity()中将DecorView添加到Window中;
插件化、热修复、换肤
AOP
1、动态代理
2、注解处理器
3、AspectJ
4、ASM
5、javassit
图片加载
Glide原理
大图加载OOM
1、Bitmap的加载原理?
2、Android中的缓存策略?
2、LruCache 底层原理?
经典三方库
RxJava
leakcanary
Gradle
apk打包和安装
Hybrid
js调用原生有几种方式?
性能优化
1、内存泄漏检测及优化
2、包体积优化
3、启动速度优化
4、布局优化
其他
计算机网络
常见问题
- 三次握手和四次挥手
- https/http详解
- 网络分层架构,https的连接过程,
- tcp和udp的区别。
设计模式
MVC、MVP、MVVM
六大原则
单例的写法
Kotlin
Kotlin的优势
构造函数
作用域函数
代理方法
协程原理
Flutter
1、Flutter中isolate的原理