将对象恢复为默认状态

时间:2016-10-20 06:58:53

标签: java design-patterns javac

由于大量的对象创建,我正在应用一个我们面临问题的对象池。对于同样的事情,我需要一个clear()方法来清理或恢复对象到每个对象的默认状态,就像它是一个新创建的对象一样。可以在不手动调用每个方法设置为默认值的情况下完成此操作,因为如果开发人员在更改clear()时忘记更新bean class,则可能会出现错误。

2 个答案:

答案 0 :(得分:0)

首先,垃圾收集器会自动收集所有不需要的对象。

您必须使用以下方法请求垃圾收集器的另一个选项:

System.gc();

OR

Runtime.getRuntime().gc();

您可以在bean类中Override finalize method

protected void finalize() throws Throwable
{
//Keep some resource closing operations here
}

答案 1 :(得分:0)

Java中,对于您的案件肯定没有任何此类准备好的决定。如果你需要返回池的工作者处于初始状态,那么你必须自己做,我的意思是你需要write方法将所有需要的对象变量放在初始值中。

同时我会说你在这里避免大量的对象创建是不必要的,直到你会在profiler中看到这个特定事件的重要时间。我还会说,由于你的类的结构复杂(因为你不想自己编写这个干净的方法,我猜 - 它们很复杂) - 清除这些对象它们自己将花费相当的时间来创建这个对象。在大多数情况下,池Java用于非常昂贵的对象,例如线程或数据库连接。