public class UnsafeLazyInitialization {
private static Resource resource;
public static Resource getInstance() {
if (resource == null) //1
resource = new Resource(); //2
return resource; //3
}
}
- 如果是,是否有可能让实例返回 null,请帮助我了解原因和方式?
getInstance()
永远不会返回null
。
此实现的危险性不同:无法保证 getInstance()
将只返回一个实例。换句话说,您的单例并不是真正的单例。