## 内存泄漏
简单的说本该释放的资源和对象没有得到释放,一直被某个或者某些实例所持有却不能被使用导致GC不能够回收。
https://blog.csdn.net/north1989/article/details/51999920
#### GC(垃圾回收)
在堆中,找到已经无用的对象,并把这些对象占用的空间收回使其可以重新利用.大多数垃圾回收的 算法思路都是一致的:把所有对象组成一个集合,或可以理解为树状结构,从树根开始找,只要可以找到的都是活动对象,如果找不到,这个对象就是凋零的昨日黄 花,应该被回收了。
在sun 的文档说明中,对JVM堆的新域,是采用coping算法,该算法的提出是为了克服句柄的开销和解决堆碎片的垃圾回收。它开始时把堆分成一个对象面和多个 空闲面,程序从对象面为对象分配空间,当对象满了,基于 coping算法的垃圾收集就从根集中扫描活动对象,并将每个活动对象复制到空闲面(使得活动对象所占的内存之间没有空闲洞),这样空闲面变成了对象面, 原来的对象面变成了空闲面,程序会在新的对象面中分配内存。
## 布局优化
## 内存优化
## 电量优化
- 空白目录
- 自我介绍
- Android面试题
- Handler
- 网络请求框架
- 图片处理框架Picasso,Glide
- Android最佳性能实践OOM
- 异步:RxJava,AsyncTask
- View,ViewGroup事件分发
- 消息传递:EventBus
- HTTPS和HTTP的区别
- 进程间通信的方式
- HttpClient与HttpUrlConnection的区别
- 性能优化
- Java多线程
- Fragment状态保持和恢复
- 讲解一下Context
- JNI
- java虚拟机和Dalvik虚拟机的区别
- 线程sleep和wait有什么区别
- 保存Activity状态
- WebView与js交互(调用哪些API)
- 内存泄露检测,内存性能优化
- 布局优化
- 自定义view和动画
- 设计模式(单例,工厂,观察者。作用,使用场景)
- String,Stringbuffer,Stringbuilder 区别
- 开源框架,为什么使用,与别的有什么区别
- Android大厂面试题
- 爱奇艺
- 小米
- 腾讯
- 阿里
- 今日头条
- 共同问到的
- 其他问题
- 框架MVC、MVP、MVVM
- sleep和wait有什么区别
- React Native原理
- React Native面试题
- 数据结构
- Android开发
- 基础知识
- Java基础
- 数据结构
- 面向对象思想
- 设计模式
- 开发环境
- Android SDK
- Activity
- Service
- Broadcastreceiver
- Contentprovider
- ActionBar
- Fragment
- UI
- 通信
- 数据持久化
- 性能
- 调试
- 适配
- 测试
- 安全
- NDK
- 手机功能
- 第三方扩展
- 其他
- 2018 Java面试题
- Android(2017-2018)BAT面试题整理
- 2017下半年,一二线互联网公司Android面试题汇总
- 2018阿里Android面试题
- 一面
- 二面
- 三面