Java垃圾回收和C++对象销毁有什么区别

What is the difference between Java Garbage collection and C++ object destruction?

本文关键字:什么 区别 对象 C++ Java      更新时间:2023-10-16

我在某处读到垃圾回收不像破坏(在C++意义上)。 它们有何不同?

C++销毁是确定性的,垃圾回收不是。

C++你可以保证何时调用析构函数,在 Java 中根本没有这样的保证。事实上,你的析构函数可能永远不会在 Java 中被调用。

  • 对象即将被删除之前调用析构函数(无论是在堆栈上还是堆上)
  • 垃圾回收将不时地检查您的程序,然后检查是否有任何不再使用的变量并将其删除