黑马程序员技术交流社区

标题: 垃圾回收 [打印本页]

作者: zxg08042810    时间: 2014-3-3 12:47
标题: 垃圾回收
GC是什么? 为什么要有GC?

作者: volvoxc    时间: 2014-3-3 12:50
GC就是垃圾回收机制。简单说就是内存中的垃圾多了容易内存溢出。
作者: 行如止水    时间: 2014-3-3 13:54
就是垃圾回收,如果JAVA让你用指针的话,可能没有GC,但是你必须自己做这些事,你如果写过C或C++就知道那有多么烦人了。
作者: 黄陂酷歌    时间: 2014-3-3 13:58
    gc就是垃圾回收器
    我学过c++,写C/C++程序,程序员定义了一个变量,就是在内存中开辟了一段相应的空间来存值。内存再大也是有限的,所以当程序不再需要使用某个变量的时候,就需要释放这个内存空间资源,好让别的变量来用它。在C/C++中,释放无用变量内存空间的事情要由程序员自己来解决。就是说当程序员认为变量没用了,就应当写一条代码,释放它占用的内存。这样才能最大程度地避免内存泄露和资源浪费。
    Java有了GC,就不需要程序员去人工释放内存空间。当Java虚拟机发觉内存资源紧张的时候,就会自动地去清理无用变量所占用的内存空间。当然,如果需要,程序员可以在Java程序中显式地使用System.gc()来强制进行一次立即的内存清理。
作者: Amorvos    时间: 2014-3-3 16:59
gc是提示垃圾回收机制进行垃圾回收,具体回不回收看情况,垃圾回收机制只是一种程序员自我希望的结果,自我安慰罢了。
作者: Black_House    时间: 2014-3-3 17:04
java垃圾回收是有jvm自动执行的,不是人为操作的,所以当不存在对某对象的任何引用时,该对象就处于被jvm回收的状态,并不是马上予以销毁。
作者: 漠然~回首℃    时间: 2014-3-3 23:08
cg就是java特有的垃圾回收机制,C语言就没有这种自动垃圾回收器,这也是java的一大特性,可以防止内存垃圾过多而造成内存溢出;




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2