1.多线程并发,锁,线程池原理
https://www.cnblogs.com/skywang12345/p/java_threads_category.html
Object中的wait(),notify(),notifyAll()方法是和"同步锁"(synchronized关键字)捆绑使用的;
而Condition是需要与"互斥锁"/"共享锁"捆绑 reentrantlock.
volatile https://blog.csdn.net/u012723673/article/details/80682208
死锁 https://www.cnblogs.com/xiaoxi/p/8311034.html
原子性,可见性,有序性 https://blog.csdn.net/hollis_chuang/article/details/99944022
锁的种类
多线程开发:https://juejin.im/post/5d45a75de51d4561ee1bdf10
(深入理解Java虚拟机:JVM高级特性与最佳实践.周志明.高清扫描版.pdf)
2.JAVA虚拟机模型,Java内存模型,垃圾回收机制
(深入理解Java虚拟机:JVM高级特性与最佳实践.周志明.高清扫描版.pdf)
3.反射,hook,java队列queue
(Effective Java.pdf)
4.强软弱虚引用
5.Java Object
6.数据结构,设计模式(关键字)
https://study.163.com/course/introduction.htm?courseId=1006190095#/courseDetail?tab=1
7.脚本编写
8.Classloader 分 java 和 android (热修复)
Classloader :1. https://blog.csdn.net/xyang81/article/details/7292380
2. https://blog.csdn.net/itachi85/article/details/78088701
3. https://blog.csdn.net/itachi85/article/details/78276837
4.https://www.jianshu.com/p/96a72d1a7974
9. hashCode()方法
https://www.cnblogs.com/dolphin0520/p/3681042.html
1.序列化(Parcelable和Serilizable)
2.Acitvity启动模式
3.Recycleview和ListView的区别及优化
4.自定义behavior
5.Android事件分发机制
6.动画的分类及其原理(属性动画)
7.Android的屏幕适配方法
8.内存优化,布局优化,启动优化,卡顿优化,耗电量优化,apk体积优化,ANR解决
9.如何保证Service不被杀死?如何保证进程不被杀死?
10.DVM,JVM和ART有什么区别
11.LurCache缓存算法
12.MVC,MVP,MVVM
13.拆分包混淆
14.跨进程通讯(binder)
15.NDK开发流程
16.加解密
17.热修复,插件化原理
18.Okhttp,Retrofit,RxJava,Glide
19.android源码(android.jar/framework)
1. Android.jar
HandlerThread、IntentService,handler通讯,AsyncTask,view绘制流程,ThreadLocal原理,ThreadPoolExecutor原理, classloader。
2. Framework:
系统启动,进程启动,根activity启动,AMS等
https://blog.csdn.net/WangRain1/article/details/98503541
20.Android中各个版本的功能特性
21.算法-剑指offer
22.Camera 相关 OpenCV / OpenGL
音视频
(持续更新中,完善知识点链接~)
描述问题一定要慢!不要一下子讲一大堆,慢显得你沉稳、自信,而且你还有时间反应思路接下来怎么讲更好。
面试资源链接:
Android、Java程序员面试资源总结
https://juejin.im/post/5d48e9c36fb9a06af13d50f9
https://www.jianshu.com/p/cfac5c131a9b