内存优化

内存检测工具 MAT
android studio profile

内存抖动
内存泄漏
内存溢出

JMM 内存结果模型

GC算法

对象的生命周期:内存分配初始化、不可见、不可达、收集、终结、内存重新分配

四种引用类型

incomegoing: 持有该对象的对象
outgoing: 该对象持有的对象

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class A {
C c = new C()
}


class B {
C c = new C()
}

class C {
public C() {
}
C instance = new C()
public C getInstance() {
return c
}
D d = new D()
E e = new E()
}

C 的incomegoing为 A、B、C
C 的outgoing为 C、D、E