# Android-Daily-Interview **Repository Path**: jakHall/Android-Daily-Interview ## Basic Information - **Project Name**: Android-Daily-Interview - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-04-13 - **Last Updated**: 2021-11-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README
---------------- 每工作日更新一道 Android 面试题,小聚成河,大聚成江,坚持下来的都是时代的铸就者,共勉之!如果想要和我们一起坚持下去,不妨点个**关注**吧!:rainbow_flag: ## 后续计划 #### 经过反复思考和收集意见,现决定将每日一题任务**暂时**关闭,后续将集中精力去提升本项目的质量和完善题解,感谢大家一直以来的支持,继续无畏前行💪 ## 如何贡献? 想加入这件有意义的事,并成为[**贡献者**](https://github.com/Moosphan/Android-Daily-Interview/blob/HEAD/android-interview/contributors.md)一员?很简单,你可以选择以下方式来完善和壮大这个项目: 1. 参与每日答题,在[**答题区**](https://github.com/Moosphan/Android-Daily-Interview/issues)留下你的见解,让更多人认识你! 2. 参与[**往期面试题的归纳、总结、完善或者扩展**](https://github.com/Moosphan/Android-Daily-Interview/issues/113),稳固基石! 3. 前往👉[**后续面试题征集区域**](https://github.com/Moosphan/Android-Daily-Interview/issues/20),提供更多优质面试题~ 4. 你也可以加入QQ群,参与本项目的维护或者讨论:**713463651** ## 历史汇总区 - **第 222 期**:[**什么是JMM?它存在哪些问题?该如何解决?**](https://github.com/Moosphan/Android-Daily-Interview/issues/240) - **第 221 期**:[**试从源码角度分析Handler的post和sendMessage方法的区别和应用场景?**](https://github.com/Moosphan/Android-Daily-Interview/issues/239) - **第 220 期**:[**说说ThreadLocal的使用场景?与Synchronized相比有什么特性?**](https://github.com/Moosphan/Android-Daily-Interview/issues/238) - **第 219 期**:[**Java中为什么会出现Atomic类?试分析它的原理和缺点?**](https://github.com/Moosphan/Android-Daily-Interview/issues/237) - **第 218 期**:[**说说你未来的职业规划是怎样的?**](https://github.com/Moosphan/Android-Daily-Interview/issues/236) - **第 217 期**:[**为什么ViewPager嵌套ViewPager,内部的ViewPager滚动没有被拦截?**](https://github.com/Moosphan/Android-Daily-Interview/issues/235) - **第 216 期**:[**你了解过哪些Android屏幕适配方面的技巧?**](https://github.com/Moosphan/Android-Daily-Interview/issues/234) - **第 215 期**:[**为什么协程比线程要轻量?**](https://github.com/Moosphan/Android-Daily-Interview/issues/233) - **第 214 期**:[**为什么要将项目迁移到AndroidX?如何进行迁移?**](https://github.com/Moosphan/Android-Daily-Interview/issues/232) - **第 213 期**:[**Kotlin中集合遍历有哪几种方式?**](https://github.com/Moosphan/Android-Daily-Interview/issues/231) - **第 212 期**:[**如何判断单链表交叉?**](https://github.com/Moosphan/Android-Daily-Interview/issues/230) - **第 211 期**:[**请说说Java中String.length()的运作原理?**](https://github.com/Moosphan/Android-Daily-Interview/issues/229) - **第 210 期**:[**谈一谈RxJava背压原理?**](https://github.com/Moosphan/Android-Daily-Interview/issues/228) - **第 209 期**:[**在开发过程中你遇到过的最大的难题是什么?如何解决的?**](https://github.com/Moosphan/Android-Daily-Interview/issues/227) - **第 208 期**:[**Post中请求参数放在了哪个位置?**](https://github.com/Moosphan/Android-Daily-Interview/issues/226) - **第 207 期**:[**分别通过对象表达式object和lambda表达式实现的函数式接口内部有何不同?**](https://github.com/Moosphan/Android-Daily-Interview/issues/224) - **第 206 期**:[**TCP/IP协议分为哪几层?TCP和HTTP分别属于哪一层?**](https://github.com/Moosphan/Android-Daily-Interview/issues/223) - **第 205 期**:[**什么是Lifecycle?请分析其内部原理和使用场景?**](https://github.com/Moosphan/Android-Daily-Interview/issues/222) - **第 204 期**:[**说说HttpClient与HttpUrlConnection的区别?为何前者会被替代?**](https://github.com/Moosphan/Android-Daily-Interview/issues/221) - **第 203 期**:[**Android中View的几种位移方式的区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/220) - **第 202 期**:[**对于GIF 格式的图片加载有什么思路和建议?**](https://github.com/Moosphan/Android-Daily-Interview/issues/219) - **第 201 期**:[**为什么说Http是可靠的数据传输协议?**](https://github.com/Moosphan/Android-Daily-Interview/issues/218) - **第 200 期**:[**Kotlin中的数据类型有隐式转换吗?为什么?**](https://github.com/Moosphan/Android-Daily-Interview/issues/217) - **第 199 期**:[**有了解过WindowInsets吗?它有哪些应用场景?**](https://github.com/Moosphan/Android-Daily-Interview/issues/216) - **第 198 期**:[**谈一谈Java成员变量,局部变量和静态变量的创建和回收时机?**](https://github.com/Moosphan/Android-Daily-Interview/issues/215) - **第 197 期**:[**如何绕过Android9.0针对反射的限制?**](https://github.com/Moosphan/Android-Daily-Interview/issues/214) - **第 196 期**:[**谈一谈Activity、View 和 Window三者的关系?**](https://github.com/Moosphan/Android-Daily-Interview/issues/213) - **第 195 期**:[**说说你是如何进行单元测试的?以及如何应用在MVP和MVVM中?**](https://github.com/Moosphan/Android-Daily-Interview/issues/212) - **第 194 期**:[**请说说依赖注入框架ButterKnife的实现原理?**](https://github.com/Moosphan/Android-Daily-Interview/issues/211) - **第 193 期**:[**谈一谈Android的屏幕刷新机制?**](https://github.com/Moosphan/Android-Daily-Interview/issues/210) - **第 192 期**:[**说说Kotlin中的Any与Java中的Object有何异同?**](https://github.com/Moosphan/Android-Daily-Interview/issues/209) - **第 191 期**:[**谈一谈java线程安全的集合有哪些?**](https://github.com/Moosphan/Android-Daily-Interview/issues/208) - **第 190 期**:[**请谈谈如何加载Bitmap并防止内存溢出?**](https://github.com/Moosphan/Android-Daily-Interview/issues/207) - **第 189 期**:[**ViewModel的出现是为了解决什么问题?并简要说说它的内部原理?**](https://github.com/Moosphan/Android-Daily-Interview/issues/205) - **第 188 期**:[**谈一谈ViewDragHelper的工作原理?**](https://github.com/Moosphan/Android-Daily-Interview/issues/204) - **第 187 期**:[**谈谈你对Window和WindowManager的理解?**](https://github.com/Moosphan/Android-Daily-Interview/issues/203) - **第 186 期**:[**谈一谈RecyclerView.Adapter的几种数据刷新方式有何不同?**](https://github.com/Moosphan/Android-Daily-Interview/issues/202) - **第 185 期**:[**Kotlin中该如何安全地处理可空类型?**](https://github.com/Moosphan/Android-Daily-Interview/issues/201) - **第 184 期**:[**webp和svg格式的图片各自有什么特点?应该如何在Android中使用?**](https://github.com/Moosphan/Android-Daily-Interview/issues/200) - **第 183 期**:[**谈一谈SurfaceView与TextureView的使用场景和用法?**](https://github.com/Moosphan/Android-Daily-Interview/issues/199) - **第 182 期**:[**谈谈Kotlin中的Unit?它和Java中的void有什么区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/198) - **第 181 期**:[**谈一谈Glide的缓存机制?**](https://github.com/Moosphan/Android-Daily-Interview/issues/197) - **第 180 期**:[**Kotlin中可见型修饰符有哪些?相比于Java有什么区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/196) - **第 179 期**:[**什么是BlockingQueue?请分析一下其内部原理并谈谈它的使用场景?**](https://github.com/Moosphan/Android-Daily-Interview/issues/194) - **第 178 期**:[**谈谈网络请求中的拦截器 - Interceptor 的原理和使用场景?**](https://github.com/Moosphan/Android-Daily-Interview/issues/193) - **第 177 期**:[**假如让你实现断点上传功能,你认为应该怎样去做?**](https://github.com/Moosphan/Android-Daily-Interview/issues/192) - **第 176 期**:[**谈一谈自定义View和ViewGroup的流程以及区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/191) - **第 175 期**:[**请谈谈Kotlin中的Coroutines,它与线程有什么区别?有哪些优点?**](https://github.com/Moosphan/Android-Daily-Interview/issues/190) - **第 174 期**:[**说说循环队列?它有哪些应用场景?**](https://github.com/Moosphan/Android-Daily-Interview/issues/189) - **第 173 期**:[**谈谈Kotlin中的Sequence,为什么它处理集合操作更加高效?**](https://github.com/Moosphan/Android-Daily-Interview/issues/188) - **第 172 期**:[**谈一谈Android的签名机制?**](https://github.com/Moosphan/Android-Daily-Interview/issues/187) - **第 171 期**:[**请谈谈invalidate()和postInvalidate()方法的区别和应用场景?**](https://github.com/Moosphan/Android-Daily-Interview/issues/186) - **第 170 期**:[**请谈谈View.inflate和LayoutInflater.inflate**](https://github.com/Moosphan/Android-Daily-Interview/issues/185) - **第 169 期**:[**请谈谈你是如何实现数据埋点的?**](https://github.com/Moosphan/Android-Daily-Interview/issues/184) - **第 168 期**:[**谈一谈责任链模式的使用场景?**](https://github.com/Moosphan/Android-Daily-Interview/issues/183) - **第 167 期**:[**什么是MVVM?你是如何将其应用于具体项目中的?**](https://github.com/Moosphan/Android-Daily-Interview/issues/182) - **第 166 期**:[**谈谈RecyclerView的缓存机制?**](https://github.com/Moosphan/Android-Daily-Interview/issues/181) - **第 165 期**:[**谈谈Kotlin中的构造方法?有哪些注意事项?**](https://github.com/Moosphan/Android-Daily-Interview/issues/180) - **第 164 期**:[**什么是AOP?在Android中它有哪些应用场景?**](https://github.com/Moosphan/Android-Daily-Interview/issues/179) - **第 163 期**:[**谈一谈Fragment懒加载?**](https://github.com/Moosphan/Android-Daily-Interview/issues/178) - **第 162 期**:[**关于LayoutInflater,它是如何通过 inflate 方法获取到具体View的?**](https://github.com/Moosphan/Android-Daily-Interview/issues/177) - **第 161 期**:[**谈一谈EventBus的原理?**](https://github.com/Moosphan/Android-Daily-Interview/issues/176) - **第 160 期**:[**有用过ConstraintLayout吗?它有哪些特点?** ](https://github.com/Moosphan/Android-Daily-Interview/issues/175) - **第 159 期**:[**请谈谈源码中StaticLayout的用法和应用场景?** ](https://github.com/Moosphan/Android-Daily-Interview/issues/174) - **第 158 期**:[**谈一谈Android P禁用http对我们开发有什么影响?**](https://github.com/Moosphan/Android-Daily-Interview/issues/173) - **第 157 期**:[**请谈谈什么是同步屏障?**](https://github.com/Moosphan/Android-Daily-Interview/issues/171) - **第 156 期**:[**Handler中有Loop死循环,为什么没有阻塞主线程,原理是什么?**](https://github.com/Moosphan/Android-Daily-Interview/issues/170) - **第 155 期**:[**在Kotlin中,什么是内联函数?有什么作用?**](https://github.com/Moosphan/Android-Daily-Interview/issues/169) - **第 154 期**:[**说说Activity加载的流程?**](https://github.com/Moosphan/Android-Daily-Interview/issues/168) - **第 153 期**:[**什么是快速排序?如何优化?**](https://github.com/Moosphan/Android-Daily-Interview/issues/167) - **第 152 期**:[**Java与JS代码如何互调?有做过相关优化吗?**](https://github.com/Moosphan/Android-Daily-Interview/issues/166) - **第 151 期**:[**静态代理和动态代理的区别,什么场景使用?**](https://github.com/Moosphan/Android-Daily-Interview/issues/165) - **第 150 期**:[**在Kotlin中,何为解构?该如何使用?**](https://github.com/Moosphan/Android-Daily-Interview/issues/164) - **第 149 期**:[**PathClassLoader和DexClassLoader有何区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/163) - **第 148 期**:[**说说你对Java注解的理解?**](https://github.com/Moosphan/Android-Daily-Interview/issues/162) - **第 147 期**:[**请谈谈Fragment的生命周期?**](https://github.com/Moosphan/Android-Daily-Interview/issues/161) - **第 146 期**:[**谈一谈LeakCanray的工作原理?**](https://github.com/Moosphan/Android-Daily-Interview/issues/160) - **第 145 期**:[**如何获取Android设备唯一ID?**](https://github.com/Moosphan/Android-Daily-Interview/issues/159) - **第 144 期**:[**谈谈如何看待Flutter,React Native与Android关系?**](https://github.com/Moosphan/Android-Daily-Interview/issues/158) - **第 143 期**:[**请简述Apk的安装过程?**](https://github.com/Moosphan/Android-Daily-Interview/issues/157) - **第 142 期**:[**getDimension、getDimensionPixelOffset 和 getDimensionPixelSize 三者的区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/156) - **第 141 期**:[**说说ContentProvider、ContentResolver、ContentObserver 之间的关系?**](https://github.com/Moosphan/Android-Daily-Interview/issues/155) - **第 140 期**:[**如何优化 Gradle 的构建速度?**](https://github.com/Moosphan/Android-Daily-Interview/issues/154) - **第 139 期**:[**String为什么要设计成不可变的?**](https://github.com/Moosphan/Android-Daily-Interview/issues/153) - **第 138 期**:[**有没有遇到64k问题,应该如何解决?**](https://github.com/Moosphan/Android-Daily-Interview/issues/152) - **第 137 期**:[**Intent传输数据的大小有限制吗?如何解决?**](https://github.com/Moosphan/Android-Daily-Interview/issues/151) - **第 136 期**:[**谈谈安卓apk构建的流程?**](https://github.com/Moosphan/Android-Daily-Interview/issues/150) - **第 135 期**:[**请简要谈谈Android系统的架构组成?**](https://github.com/Moosphan/Android-Daily-Interview/issues/149) - **第 134 期**:[**谈一谈插值器和估值器?**](https://github.com/Moosphan/Android-Daily-Interview/issues/148) - **第 133 期**:[**什么是红黑树?为什么要用红黑树?**](https://github.com/Moosphan/Android-Daily-Interview/issues/147) - **第 132 期**:[**你觉得Kotlin与Java混合开发时需要注意哪些问题?**](https://github.com/Moosphan/Android-Daily-Interview/issues/146) - **第 131 期**:[**谈谈Android10更新了哪些内容?如何进行适配?**](https://github.com/Moosphan/Android-Daily-Interview/issues/145) - **第 130 期**:[**如何计算一张图片所占的内存空间大小?**](https://github.com/Moosphan/Android-Daily-Interview/issues/144) - **第 129 期**:[**请谈谈策略模式原理及其应用场景?**](https://github.com/Moosphan/Android-Daily-Interview/issues/143) - **第 128 期**:[**什么是JNI?具体说说如何实现Java与C++的互调?**](https://github.com/Moosphan/Android-Daily-Interview/issues/142) - **第 127 期**:[**请谈谈Java的内存回收机制?**](https://github.com/Moosphan/Android-Daily-Interview/issues/141) - **第 126 期**:[**Kotlin中的可见性修饰符有哪些?相比于Java有什么区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/140) - **第 125 期**:[**MVP中你是如何处理Presenter层以防止内存泄漏的?**](https://github.com/Moosphan/Android-Daily-Interview/issues/139) - **第 124 期**:[**Activity中onNewIntent方法的调用时机和使用场景?**](https://github.com/Moosphan/Android-Daily-Interview/issues/138) - **第 123 期**:[**什么是悲观锁和乐观锁?**](https://github.com/Moosphan/Android-Daily-Interview/issues/133) - **第 122 期**:[**请谈谈你是如何进行多渠道打包的?**](https://github.com/Moosphan/Android-Daily-Interview/issues/132) - **第 121 期**:[**谈一谈获取View宽高的几种方法?**](https://github.com/Moosphan/Android-Daily-Interview/issues/131) - **第 120 期**:[**为什么推荐用SparseArray代替HashMap?**](https://github.com/Moosphan/Android-Daily-Interview/issues/130) - **第 119 期**:[**谈一谈TCP/IP三次握手,四次挥手?**](https://github.com/Moosphan/Android-Daily-Interview/issues/129) - **第 118 期**:[**Kotlin 中 infix 关键字的原理和使用场景?**](https://github.com/Moosphan/Android-Daily-Interview/issues/128) - **第 117 期**:[**说一说数组和链表的区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/127) - **第 116 期**:[***`View.post()`* 为什么可以获取到宽高信息?**](https://github.com/Moosphan/Android-Daily-Interview/issues/126) - **第 115 期**:[**手写二叉树结构?**](https://github.com/Moosphan/Android-Daily-Interview/issues/125) - **第 114 期**:[**Kotlin中 Unit 类型的作用以及与Java中 Void 的区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/124) - **第 113 期**:[**谈谈如何对WebView进行优化?**](https://github.com/Moosphan/Android-Daily-Interview/issues/123) - **第 112 期**:[**谈一谈如何判断一个链表成环?**](https://github.com/Moosphan/Android-Daily-Interview/issues/122) - **第 111 期**:[**谈谈你对原型模式的理解?**](https://github.com/Moosphan/Android-Daily-Interview/issues/121) - **第 110 期**:[**谈谈List、Set以及Map的区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/120) - **第 109 期**:[**谈谈 AIDL?**](https://github.com/Moosphan/Android-Daily-Interview/issues/119) - **第 108 期**:[**谈谈你对Java泛型中类型擦除的理解,并说说其局限性?**](https://github.com/Moosphan/Android-Daily-Interview/issues/118) - **第 107 期**:[**谈一谈线程sleep()和wait()的区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/117) - **第 106 期**:[**请举例说明Kotlin中with与apply函数的应用场景和区别?** ](https://github.com/Moosphan/Android-Daily-Interview/issues/116) - **第 105 期**:[**说下切换横竖屏时Activity的生命周期?** ](https://github.com/Moosphan/Android-Daily-Interview/issues/115) - **第 104 期**:[**谈谈如何对网络请求进行优化?** ](https://github.com/Moosphan/Android-Daily-Interview/issues/114) - **第 103 期**:[**你知道哪些提升开发效率的骚操作?** ](https://github.com/Moosphan/Android-Daily-Interview/issues/112) - **第 102 期**:[**如何处理大图的加载?**](https://github.com/Moosphan/Android-Daily-Interview/issues/111) - **第 101 期**:[**谈一谈java线程常见的几种锁?**](https://github.com/Moosphan/Android-Daily-Interview/issues/110) - **第 100 期**:[**谈谈代码混淆的步骤?**](https://github.com/Moosphan/Android-Daily-Interview/issues/109) - **第 99 期**:[**如何保证线程安全?**](https://github.com/Moosphan/Android-Daily-Interview/issues/108) - **第 98 期**:[**什么是委托属性?请简要说说其使用场景和原理?**](https://github.com/Moosphan/Android-Daily-Interview/issues/107) - **第 97 期**:[**什么是线程池?如何创建一个线程池?**](https://github.com/Moosphan/Android-Daily-Interview/issues/106) - **第 96 期**:[**请谈谈你对Binder机制的理解?**](https://github.com/Moosphan/Android-Daily-Interview/issues/105) - **第 95 期**:[**谈谈Java 线程中 notify 和 notifyAll有什么区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/104) - **第 94 期**:[**谈谈App的电量优化?**](https://github.com/Moosphan/Android-Daily-Interview/issues/102) - **第 93 期**:[**谈谈你对Kotlin中的 data 关键字的理解?相比于普通类有哪些特点?**](https://github.com/Moosphan/Android-Daily-Interview/issues/101) - **第 92 期**:[**简单介绍下ContentProvider是如何实现数据共享的?**](https://github.com/Moosphan/Android-Daily-Interview/issues/100) - **第 91 期**:[**说一下线程的几种状态?**](https://github.com/Moosphan/Android-Daily-Interview/issues/99) - **第 90 期**:[**Service 如何进行保活?**](https://github.com/Moosphan/Android-Daily-Interview/issues/98) - **第 89 期**:[**谈谈你对时间复杂度和空间复杂度的理解?**](https://github.com/Moosphan/Android-Daily-Interview/issues/97) - **第 88 期**:[**Kotlin中实现单例的几种常见方式?**](https://github.com/Moosphan/Android-Daily-Interview/issues/96) - **第 87 期**:[**谈谈布局优化的技巧?**](https://github.com/Moosphan/Android-Daily-Interview/issues/95) - **第 86 期**:[**请简述一次http网络请求的过程?**](https://github.com/Moosphan/Android-Daily-Interview/issues/94) - **第 85 期**:[**为什么在子线程中创建Handler会抛异常?**](https://github.com/Moosphan/Android-Daily-Interview/issues/93) - **第 84 期**:[**谈谈如何适配更多机型的?**](https://github.com/Moosphan/Android-Daily-Interview/issues/92) - **第 83 期**:[**子线程能否更新UI?**](https://github.com/Moosphan/Android-Daily-Interview/issues/91) - **第 82 期**:[**Kotlin中List与MutableList的区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/90) - **第 81 期**:[**如何反转一个单链表?**](https://github.com/Moosphan/Android-Daily-Interview/issues/89) - **第 80 期**:[**Android Native Crash问题如何分析定位?**](https://github.com/Moosphan/Android-Daily-Interview/issues/88) - **第 79 期**:[**简述一下Android 8.0、9.0 分别增加了哪些新特性?**](https://github.com/Moosphan/Android-Daily-Interview/issues/87) - **第 78 期**:[**谈一谈单例模式,建造者模式,工厂模式的使用场景?如何合理选择?**](https://github.com/Moosphan/Android-Daily-Interview/issues/86) - **第 77 期**:[**谈谈你是如何优化App启动过程的?**](https://github.com/Moosphan/Android-Daily-Interview/issues/85) - **第 76 期**:[**JVM、Dalvik、ART三者的原理和区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/84) - **第 75 期**:[**谈谈ThreadLocal用法和原理?**](https://github.com/Moosphan/Android-Daily-Interview/issues/83) - **第 74 期**:[**Java 中 IO 流分为几种?BIO,NIO,AIO 有什么区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/82) - **第 73 期**:[**什么是代理模式?如何使用?Android源码中的代理模式?**](https://github.com/Moosphan/Android-Daily-Interview/issues/81) - **第 72 期**:[**谈谈怎么给 Apk 瘦身?**](https://github.com/Moosphan/Android-Daily-Interview/issues/80) - **第 71 期**:[**简要说说 LruCache 的原理?**](https://github.com/Moosphan/Android-Daily-Interview/issues/79) - **第 70 期**:[**说一说https,udp,socket区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/78) - **第 69 期**:[**谈谈如何重写equals()方法?为什么还要重写hashCode()?**](https://github.com/Moosphan/Android-Daily-Interview/issues/77) - **第 68 期**:[**Kotlin 中注解 @JvmOverloads 的作用?**](https://github.com/Moosphan/Android-Daily-Interview/issues/76) - **第 67 期**:[**Java 中深拷贝与浅拷贝的区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/75) - **第 66 期**:[**谈谈对于ConcurrentHashMap的理解?**](https://github.com/Moosphan/Android-Daily-Interview/issues/74) - **第 65 期**:[**简述下热修复的原理?**](https://github.com/Moosphan/Android-Daily-Interview/issues/73) - **第 64 期**:[**说说项目中用到的设计模式和使用场景?**](https://github.com/Moosphan/Android-Daily-Interview/issues/72) - **第 63 期**:[**请简述 Http 与 Https 的区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/71) - **第 62 期**:[**Android 中的图片优化方案?**](https://github.com/Moosphan/Android-Daily-Interview/issues/70) - **第 61 期**:[**请谈谈 Thread 中 run() 与 start() 的区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/69) - **第 60 期**:[**谈谈 Error 和 Exception 的区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/68) - **第 59 期**:[**请简述一下什么是 Kotlin?它有哪些特性?**](https://github.com/Moosphan/Android-Daily-Interview/issues/67) - **第 58 期**:[**Java 中使用多线程的方式有哪些?**](https://github.com/Moosphan/Android-Daily-Interview/issues/66) - **第 57 期**:[**什么是反射机制?反射机制的应用场景有哪些?**](https://github.com/Moosphan/Android-Daily-Interview/issues/65) - **第 56 期**:[**谈一谈ArrayList的扩容?**](https://github.com/Moosphan/Android-Daily-Interview/issues/64) - **第 55 期**:[**谈谈线程阻塞的原因?**](https://github.com/Moosphan/Android-Daily-Interview/issues/63) - **第 54 期**:[**什么是 RemoteViews?使用场景有哪些?**](https://github.com/Moosphan/Android-Daily-Interview/issues/62) - **第 53 期**:[**分别讲讲 final、static 和 synchronized 可以修饰什么,以及修饰后的作用?**](https://github.com/Moosphan/Android-Daily-Interview/issues/61) - **第 52 期**:[**请用 Java 实现一个简单的单链表?**](https://github.com/Moosphan/Android-Daily-Interview/issues/59) - **第 51 期**:[**谈谈你对Android性能优化方面的了解?**](https://github.com/Moosphan/Android-Daily-Interview/issues/58) - **第 50 期**:[**分别介绍下你所知道Android的几种存储方式?**](https://github.com/Moosphan/Android-Daily-Interview/issues/57) - **第 49 期**:[**什么是冒泡排序?如何优化?**](https://github.com/Moosphan/Android-Daily-Interview/issues/56) - **第 48 期**:[**说一下 synchronized 和 volatile 关键字的区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/55) - **第 47 期**:[**谈谈ArrayMap和HashMap的区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/54) - **第 46 期**:[**谈一谈startService和bindService的区别,生命周期以及使用场景?**](https://github.com/Moosphan/Android-Daily-Interview/issues/53) - **第 45 期**:[**“equals”与“==”、“hashCode”的区别和使用场景?**](https://github.com/Moosphan/Android-Daily-Interview/issues/51) - **第 44 期**:[**请列出几种常见的工厂模式并说明它们的用法?**](https://github.com/Moosphan/Android-Daily-Interview/issues/50) - **第 43 期**:[**谈谈你对 Activity.runOnUiThread 的理解?**](https://github.com/Moosphan/Android-Daily-Interview/issues/49) - **第 42 期**:[**谈一谈自定义LayoutManager的流程?**](https://github.com/Moosphan/Android-Daily-Interview/issues/47) - **第 41 期**:[**谈一谈JAVA垃圾回收机制?**](https://github.com/Moosphan/Android-Daily-Interview/issues/46) - **第 40 期**:[**请简述 LinkedHashMap 的工作原理和使用方式?**](https://github.com/Moosphan/Android-Daily-Interview/issues/45) - **第 39 期**:[**简述JVM中类的加载机制与加载过程?**](https://github.com/Moosphan/Android-Daily-Interview/issues/44) - **第 38 期**:[**谈谈线程死锁,如何有效的避免线程死锁?**](https://github.com/Moosphan/Android-Daily-Interview/issues/43) - **第 37 期**:[**谈谈如何优化ListView?**](https://github.com/Moosphan/Android-Daily-Interview/issues/42) - **第 36 期**:[**谈谈自定义View的流程?**](https://github.com/Moosphan/Android-Daily-Interview/issues/41) - **第 35 期**:[**请说一下HashMap与HashTable的区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/39) - **第 34 期**:[**针对RecyclerView你做了哪些优化?**](https://github.com/Moosphan/Android-Daily-Interview/issues/38) - **第 33 期**:[**HandlerThread 的使用场景和用法?**](https://github.com/Moosphan/Android-Daily-Interview/issues/37) - **第 32 期**:[**谈谈 ArrayList 和 LinkedList 的区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/36) - **第 31 期**:[**谈谈 Android 的事件分发机制?**](https://github.com/Moosphan/Android-Daily-Interview/issues/35) - **第 30 期**:[**请谈谈你对 MVC 和 MVP 的理解?**](https://github.com/Moosphan/Android-Daily-Interview/issues/33) - **第 29 期**:[**请简述一下 Android 7.0 的新特性?**](https://github.com/Moosphan/Android-Daily-Interview/issues/31) - **第 28 期**:[**LinearLayout, FrameLayout, RelativeLayout哪个效率高, 为什么?**](https://github.com/Moosphan/Android-Daily-Interview/issues/30) - **第 27 期**:[**对于面向对象的六大基本原则了解多少?**](https://github.com/Moosphan/Android-Daily-Interview/issues/29) - **第 26 期**:[**AsyncTask的优点和缺点?**](https://github.com/Moosphan/Android-Daily-Interview/issues/28) - **第 25 期**:[**回答一下什么是强、软、弱、虚引用以及它们之间的区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/27) - **第 24 期**:[**IntentFilter是什么?有哪些使用场景?**](https://github.com/Moosphan/Android-Daily-Interview/issues/26) - **第 23 期**:[**IntentService 的应用场景和使用姿势?**](https://github.com/Moosphan/Android-Daily-Interview/issues/25) - **第 22 期**:[**请简述从点击图标开始app的启动流程?**](https://github.com/Moosphan/Android-Daily-Interview/issues/24) - **第 21 期**:[**请简述一下String、StringBuffer和StringBuilder三者的区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/22) - **第 20 期**:[**请回答一下Android进程间的通信方式?**](https://github.com/Moosphan/Android-Daily-Interview/issues/21) - **第 19 期**:[**Serializable和Parcelable的区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/19) - **第 18 期**:[**谈谈 Android 中内存优化的方式?**](https://github.com/Moosphan/Android-Daily-Interview/issues/18) - **第 17 期**:[**简述一下 Android 中 UI 的刷新机制?**](https://github.com/Moosphan/Android-Daily-Interview/issues/17) - **第 16 期**:[**HashMap 的实现原理?**](https://github.com/Moosphan/Android-Daily-Interview/issues/16) - **第 15 期**:[**SharedPreferences 是线程安全的吗?它的 commit 和 apply 方法有什么区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/15) - **第 14 期**:[**对于 Context,你了解多少?**](https://github.com/Moosphan/Android-Daily-Interview/issues/14) - **第 13 期**:[**Window和DecorView是什么?DecorView又是如何和Window建立联系的?**](https://github.com/Moosphan/Android-Daily-Interview/issues/13) - **第 12 期**:[**请简要谈一谈单例模式?**](https://github.com/Moosphan/Android-Daily-Interview/issues/12) - **第 11 期**:[**BroadcastReceiver 与 LocalBroadcastReceiver 有什么区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/11) - **第 10 期**:[**抽象类与接口的区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/10) - **第 09 期**:[**谈谈 Handler 机制和原理?**](https://github.com/Moosphan/Android-Daily-Interview/issues/9) - **第 08 期**:[**ANR 出现的场景以及解决方案?**](https://github.com/Moosphan/Android-Daily-Interview/issues/8) - **第 07 期**:[**Android 补间动画和属性动画的区别?**](https://github.com/Moosphan/Android-Daily-Interview/issues/7) - **第 06 期**:[**如何实现多线程中的同步?**](https://github.com/Moosphan/Android-Daily-Interview/issues/6) - **第 05 期**:[**哪些情况下会导致oom问题?**](https://github.com/Moosphan/Android-Daily-Interview/issues/5) - **第 04 期**:[**LaunchMode 的应用场景?**](https://github.com/Moosphan/Android-Daily-Interview/issues/4) - **第 03 期**:[**一般什么情况下会导致内存泄漏问题?**](https://github.com/Moosphan/Android-Daily-Interview/issues/3) - **第 02 期**:[**Activity 与 Fragment 之间常见的几种通信方式?**](https://github.com/Moosphan/Android-Daily-Interview/issues/2) - **第 01 期**:[**自定义 Handler 时如何有效地避免内存泄漏问题?**](https://github.com/Moosphan/Android-Daily-Interview/issues/1) ## Thanks > 感谢 [**玩 Android**](https://www.wanandroid.com) 为广大安卓开发者无私提供一个比较全面的 Android 学习平台,此项目部分灵感亦来源于此。 ## 最后 > 建立这个项目的初衷是想大家每天以**答题打卡**的方式来巩固基础知识和查漏补缺。我相信,如果每天能够坚持打卡,不出一个月定能意识到自己的成长。因此,对于想要和我们一样坚持的同学,欢迎来加群探讨,群号**713463651**,请特别备注:**坚持打卡**。