文中所有面试题,是作者这几天面试总结下来实际问的频率比较高的题目,非网上搜集的那种。后续会不断更新,如果大家也有总结经常被问的题目,希望私信我,一起分享。
Java
- 什么是二叉树
- synchronized锁Class/静态对象/普通对象的区别
- HashMap原理
- ConcurrentHashMap原理
- HashMap和HashTable的区别
- volatile和synchronized的作用和区别
- 讲一下你对线程池的理解
- wait和sleep的区别
- List去重方式
- 你熟悉哪些设计模式
- ArrayList和LinkedList的区别及使用场景
- 重写对象的equals方法有什么作用?自己手动写一个equalsxxx方法来判断可以吗?重写equals为什么需要重写hashcode
- Java反射机制
- Java动态代理的原理
- 谈谈你对Java垃圾回收机制的理解
- Java类加载过程
- 软引用、弱引用、强引用、虚引用的区别
- 什么是单向链表,合并两个有序的单向链表
Android
- Handler机制和实现原理,为什么Handler Looper不会阻塞主线程
- 自定义View流程
- 讲述一下事件分发机制
- Activity启动过程
- Activity启动模式和区别
- Glide实现原理,LRU算法
- OkHttp实现原理,用到哪些设计模式
- RxJava实现原理,了解哪些操作符
- Retrofit的实现原理
- Dagger有什么作用
- 如果让你自己实现一个图片加载框架,你打算怎么做
- 谈谈你对MVP架构的理解
- 插件化实现原理
- Android热更新原理
- 平时工作中,怎么做性能优化,比如内存泄露,MAT/traceview之类
Kotlin
- Kotlin高阶函数、扩展函数是什么
- Kotlin对比Java有什么优势
- 解释一下extension函数
- kotlin中的null safety是什么意思
- kotlin中有几种构造函数
- 谈谈你对Kotlin协程的理解
- 解释一下kotlin中数据类的作用
其它
- Http和Https的区别?熟悉哪些Http错误码?分别代表什么
- TCP拆包和粘包怎么解决
- TCP和UDP的区别
- AOP实现原理及应用场景
闲扯
- 在实际项目开发中,你遇到过哪些难点,怎么解决的
- 未来几年的工作规划
- 从上家公司离职的原因
- 对下一个职位的期望