像这样实现单例模式的类的每个方法都需要使用 synchronize 关键字吗?
public class Singleton {
private Singleton(){}
public synchronized static Singleton getInstance()
{
if(instance == null)
instance = new Singleton ();
return instance;
}
public void DoA(){
}
}
由于 Singleton 不公开公共构造函数并且 getInstance() 方法是同步的,因此不需要同步方法 DoA 和 Singleton 类公开的任何其他公共方法。
这个推理正确吗?