说说内存
Android与传统JVM差别:
- 大小
- 交换能力
- 内存交换能力——给应用系统有更多内存可用的假象
- Android根本没有PC机上虚拟内存大内存寻址空间的优待
primary type内存占用
| Type | Local type | Size |
|---|---|---|
| boolean | jboolean | 8bit(desired by VM) |
| byte | jbyte | 8 |
| char | jchar | 16 |
| short | jshort | 16 |
| int | jint | 32 |
| long | jlong | 64 |
| float | jfloat | 32 |
| double | jdouble | 64 |
使用尽可能少的内存,既是经验,也是常识
- 除了减少OOM的风险外,也可提升性能
性能主要由以下三个因素决定:
- CPU如何操纵特定的数据类型
- 数据和指令需要占用多少存储空间
- 数据在内存中的布局
