`

【转载】java 垃圾回收器 finalize System.gc

    博客分类:
  • Java
阅读更多

1,finalize

finalize()方法是在对象被当成垃圾从内存中释放前调用,而不是某个对象变成了垃圾后就会调用,所以说该方法的调用时机是不确定的。

2,System.gc

System.gc就是通知java虚拟机来回收垃圾。

例子:

public class UseGC {
	public static void main(String[] args) {
		new GcTest("object1");
		new GcTest("object2");
		new GcTest("object3");

//		建议回收对象 
		System.gc();
	}
}
class GcTest {
	private String name; 
	public GcTest(String name) {
		this.name = name; 
		System.out.println(name + "建立"); 
	}
	
//	对象回收前执行 
	protected void finalize() {
		System.out.println(name + "被回收"); 
	} 
} 

 

结果 写道
object1建立
object2建立
object3建立
object3被回收
object2被回收
object1被回收

 

分享到:
评论

相关推荐

    java垃圾回收器代码举例

    Java垃圾回收器(Garbage Collector, GC)是Java编程语言中的一个重要特性,它负责自动管理内存,自动回收不再使用的对象,以防止内存泄漏。在Java中,程序员无需手动释放内存,这一过程由JVM(Java虚拟机)自动完成...

    Java垃圾回收精粹-Part4Java开发Java经验技

    Java垃圾回收(Garbage Collection, 简称GC)是Java平台中的一项重要特性,它自动管理内存,释放不再使用的对象,避免了程序员手动管理内存可能导致的内存泄露问题。本篇将深入探讨Java垃圾回收的精华部分,以及在...

    Java垃圾回收机制e.pdf

    Java垃圾回收机制允许对象在被回收前执行一些必要的清理工作,这通常通过覆盖`finalize()`方法来实现。然而,`finalize()`方法的调用时机并不确定,它会在对象被销毁之前由垃圾收集器调用,用于执行对象的清理操作。...

    Java中finalize方法使用.doc

    finalize 方法是 Java 编程语言中一个非常重要的方法,它与 Java 编程中的垃圾回收器有着紧密的关系。当一个对象变成一个垃圾对象的时候,如果此对象的内存被回收,那么就可以调用系统中定义的 finalize 方法来完成...

    Java垃圾回收机制扫描.pdf

    然而,`finalize()`的调用时机并不固定,它会在垃圾回收器准备释放对象内存时被调用,而不是像C++析构函数那样在对象离开作用域时调用。因此,`finalize()`不应被依赖来保证资源的释放,因为它的时间点无法准确预知...

    Java垃圾回收机制.pdf

    Java的垃圾回收机制(Garbage Collection,简称GC)是Java语言的一个重要特性,它解决了C++等语言中手动管理内存可能导致的内存泄漏问题。在Java中,垃圾回收是由Java虚拟机(JVM)内置的机制自动进行的,程序员无需...

    Java对象的清除与垃圾回收.pdf

    Java中的垃圾回收机制是其主要特性之一,本文将介绍垃圾回收的概念和finalize()方法的使用。 一、垃圾回收的机制 Java虚拟机的垃圾回收机制是一种自动的内存管理机制。与C++不同,Java不提供显式地对象销毁操作,...

    Java垃圾回收详解

    - `System.gc()` 和 `System.runFinalization()`:请求垃圾回收器执行垃圾回收和调用`finalize()` 方法。需要注意的是,虽然这些方法允许开发者显式地请求垃圾回收,但并不保证垃圾回收器会立即响应。 - `freeMemory...

    浅析JAVA之垃圾回收机制.doc

    在Java编程中,与C++或C等语言相比,开发者无需手动管理内存,因为Java引入了一种自动的内存管理机制——垃圾回收(Garbage Collection,简称GC)。垃圾回收器负责监测并回收不再使用的对象所占用的内存空间,以防止...

    垃圾回收相关概念.pdf

    Java虚拟机(JVM)中的垃圾回收(Garbage Collection,简称GC)是自动管理内存的重要机制,它负责识别并回收那些不再使用的对象所占据的内存,以防止内存泄漏和资源浪费。理解GC的相关概念对于优化Java应用的性能至...

    理解Java垃圾回收

    Java垃圾回收(Garbage Collection, GC)是Java编程语言中一个重要的特性,它自动管理程序运行过程中的内存分配和释放,避免程序员手动处理内存管理,从而减少错误和提高程序的可维护性。以下是对Java垃圾回收的深入...

    java高级之垃圾回收机制

    1. **系统调用**:开发者可以通过调用`System.gc()`显式请求垃圾回收,但这并不是推荐的做法,因为JVM可能会忽略此请求。 2. **内存不足**:当JVM检测到堆内存不足时,会自动触发垃圾回收。 3. **定期检查**:JVM...

    JAVA垃圾回收机制与内存泄露问题实用.pdf

    `System.gc()`仅是请求垃圾回收,不一定会触发`finalize()`,且频繁调用可能导致性能下降。 理解并优化Java的垃圾回收机制对于开发高性能、稳定的应用至关重要。开发者应当避免不必要的内存消耗,合理控制对象生命...

    Java中finalize()的用法

    Java 中的 finalize() 方法是垃圾回收器在回收对象时调用的第一个方法。finalize() 方法相当于析构函数,它是垃圾回收器回收一个对象时第一个要调用的方法。finalize() 方法的主要作用是释放对象占用的系统资源,...

    Java9垃圾回收方法finalize() 原理解析

    Java9垃圾回收方法中的finalize()方法是一个特殊的方法,它是Object类中的方法,用于在类被GC回收时做一些处理操作。finalize()方法的主要作用是释放对象占用的资源,例如关闭文件、释放Socket等。但是,finalize()...

    Android中高级面试必知必会.pdf

    垃圾回收算法(JVM)..........63 7、垃圾回收机制和调用 System.gc()的区别? .64 8. 类加载过程90 9. 反射..........101 10. 多线程和线程池........112 11.HTTP、HTTPS、TCP/IP、Socket 通信、三次握手四次挥手...

    Java垃圾回收机制的finalize方法实例分析

    Java垃圾回收机制的finalize方法实例分析 Java垃圾回收机制的finalize方法是垃圾回收机制中一个非常重要的概念,它可以帮助开发者更好地理解和掌握垃圾回收机制的工作机理。本文将通过实例形式分析finalize方法的...

Global site tag (gtag.js) - Google Analytics