gpt4 book ai didi

java - Singleton 中的惰性初始化是如何发生的?

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:55:13 26 4
gpt4 key购买 nike

谁能解释一下在下面的单例模式代码中延迟初始化是如何发生的?

public class Singleton 
{
private static Singleton INSTANCE = null;
private Singleton() {}
public static Singleton getInstance()
{
if (INSTANCE == null)
INSTANCE = new Singleton();
return INSTANCE;
}
}

最佳答案

第一次调用getInstance()时,INSTANCE为null,用INSTANCE = new Singleton();初始化。这样做的好处是,如果从未使用过实例,则不会对其进行初始化。

如果这段代码可以被多线程访问,应该改进为线程安全的。

关于java - Singleton 中的惰性初始化是如何发生的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27355230/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com