1.结构

2.各部分介绍


3.栈管运行,堆管存储



package com.jvm;
public class StackDemo {
public static void testStack(){
testStack();
}
public static void main(String[] args) {
testStack();
System.out.println("***i am method main...");
}
}

一个方法既一个栈帧
4.JVM优化
jvm主要优化堆

4.1 java堆

4.2 新生区

4.2 养老区

4.3 永久区

5. 内存划分



6. GC垃圾回收


7.GC是什么
频繁收集Yong区
较少收集Old区
基本不动Perm区


8.算法-复制算法
1.复制算法MinorGC(普通GC)
新生代使用的是MinorGC这种GC算法使用的是复制算法(Copying)
2. 原理




注意:黄色的代表要死的对象,红色表示收不掉的对象,绿色表示仅存的剩余空间


3.优缺点
优点:不会产生内存碎片完整度极高
缺点: 浪费了10%的内存空间,总要留10%为 to 区

9.算法-标记清除/标记整理算法(Full GC)MajorGC
老年代一般是由标记清除或者标记清除与标记整理的混合实现
1.标记清除

优缺点

2.标记整理

优点:不浪费空间


5056

被折叠的 条评论
为什么被折叠?



