1.GC的基础知识C语言申请内存:malloc,释放 free C++: 申请 new 释放 delete java new 自动内存回收,编程简单,系统不容易出错,手动释放内存,容易出错 1.忘记回收 2.多次回收 回收的时间点:没有任何引用指向的一个对象或者多个对象(循环引用) 2.如何定位垃圾1.引用计数 2.根可达算法 GC roots 线程栈变量,静态变量,常量池,JNI指针