Java applets destroy()方法

时间:2016-04-07 03:09:59

标签: java

即使我们不覆盖destroy方法,java也会释放资源吗?

如果我们不覆盖stop()destroy()方法会怎样?

是否会自行释放资源?

2 个答案:

答案 0 :(得分:1)

  1. 人们很少再使用Java小程序了(现在我希望我们可以让他们停止使用Flash!)。

  2. 实际上从来没有强制性的"覆盖stop()或destroy():如果你愿意的话,它只是一种方便的方式来进行任何自定义"清理#。

  3. 正如user2864740正确指出的那样,applet在JVM中运行......并且当JVM退出时,所有分配的资源都会自动释放。是否覆盖applet的stop()/ destroy()或

答案 1 :(得分:0)

在applet终止之前,浏览器会调用

销毁: destroy()方法。如果需要在销毁之前执行任何清理,您的applet将覆盖此方法。

如果Applet的子类具有在销毁之前要执行的任何操作,则它应该重写此方法。例如,带有线程的applet将使用init方法创建线程,使用destroy方法来终止它们。

Applet类提供的此方法的实现不执行任何操作。

停止: stop()方法被浏览器调用以暂停applet的执行。停止后,当浏览器调用start()时,将重新启动applet。

如果Applet的子类在每次包含它的网页不再可见时都要执行任何操作,则应该重写此方法。例如,带动画的applet可能希望使用start方法恢复动画,而stop方法则用于暂停动画。

Applet类提供的此方法的实现不执行任何操作。

和Ya .. JVM将通过垃圾收集机制来处理资源释放。它将释放不再引用的资源。

参考:https://docs.oracle.com/javase/8/docs/api/java/applet/Applet.html