【发布时间】:2017-03-29 02:46:24
【问题描述】:
我有一个用默认值填充文件的方法,我在构造函数中调用该方法。我希望该方法只运行一次(我的意思是只运行一次,所以当用户按下播放按钮 /in eclipse/ 时,该方法将不会在第二次按下时运行。
我尝试过类似的方法,但它不起作用:
private boolean defaultExecuted;
public synchronized void defaultStatsFile()
{
if (defaultExecuted)
{
return;
}
else
{
fileReadNWrite.configWriter("panel1", "non-US incidents");
fileReadNWrite.configWriter("panel2", "Hoaxes");
fileReadNWrite.configWriter("panel3", "Under NUFORC investigation");
fileReadNWrite.configWriter("panel4", "Likliest Shape");
defaultExecuted = true;
}
}
有没有更聪明的方法只填写一次文件?
如果有不清楚的地方请评论,我会回复。 任何帮助表示赞赏。
【问题讨论】:
-
这没关系,但如果你想要它用于此类的 all 实例化,则将
boolean设为静态。其他方法是使用单例或使用spring -
@ScaryWombat 嗨,感谢您的评论。我试图让它静态,但它没有工作。我会尝试研究单例。我希望静态解决方案是否有效。任何关于可能性的想法为什么它不起作用?! ://
-
你的意思是eclipse运行按钮?按两次将运行应用程序两次,因此该方法当然会被调用两次。
-
@pvg 对不起,我不是那个意思。我的意思是一旦它运行并且他们关闭程序。然后再次运行程序,该方法将不再被调用。所以我希望该方法只运行一次,再也不会运行。谢谢
-
您最好解释一下您要解决的一般问题。 “再也不会”真的很模糊。再也不会在那台电脑上?直到宇宙热死,再也不来了?为什么?你到底想完成什么?
标签: java