一、流程
上午
回顾昨天
下午
GC回收
二、知识点
1、回顾JVM的架构
2、回顾方法区的相关概念
3、回顾堆的组成、每一部分的存活时间
4、分代收集算法
垃圾回收主要对于堆空间,也会对方法区进行回收
1)为什么要使用分代回收算法
2)分代回收算法的分代依据
5、什么是垃圾?Garbage
即没有任何指针指向的对象。StackOverflowException栈溢出异常。内存溢出OutOverMeoryError内存溢出异常
6、Java垃圾回收机制
1)垃圾内存管理的优点
2)关于垃圾回收的担忧
7、GC的作用区域
8、相关的垃圾回收算法
1)标记阶段
(1)引用技术算法
(2)可达性分析算法
2)清除阶段
(1)标记-清除算法
(2)复制算法
(3)标记-压缩算法)
9、内存泄露
对象不用且无法回收
10、GCRoots可以是哪些元素?
11、可达性分析算法的注意事项
12、对象的finalization机制
13.复制算法的优缺点:
优点
没有标记和清除过程,实现简单,运行高效
复制过去以后保证空间的连续性,不会出现“碎片”问题。
缺点
此算法的缺点也是很明显的,就是需要两倍的内存空间。
复制而不是移动,意味着GC需要维护region之间对象引用关系,不管是内存占用或者时间开销也不小
14、内存溢出
1)什么是内存溢出
2)内存溢出产生的原因
15、内存泄露
什么是内存泄露
举例说明内存泄露
三、问题
1、lambada表达式
2、内部类和外部类
四、作业
1、csdn