我使用以下代码来确保 startTime
变量仅设置一次:
public class Processor
{
private Date startTime;
public void doProcess()
{
if(startTime == null)
synchronized(this)
{
if(startTime == null)
{
startTime = new Date();
}
}
// do somethings
}
}
我将用这段代码来保证变量只被实例化一次,无论调用多少次process
方法。
我的问题是:
是否有更简洁的替代方法?(例如可以删除if
和synchronized
语句)