这是一个例子:
http://www.tutorialspoint.com/java/java_using_singleton.htm
在查看第一个示例时,当用户写入:时Singleton.getInstance(),它会调出:
new Singleton()
我不知道它是什么单身,每当它创建一个新的单例对象时?
我理解第二个例子.如果singleton为null,则创建新对象,但在第一个示例中,它始终创建新对象??
那是怎么回事?
Jon*_*eet 10
不,在第一个例子中,唯一的呼叫new Singleton()是在这里(内Singleton):
private static Singleton singleton = new Singleton( );
Run Code Online (Sandbox Code Playgroud)
那是一个静态变量初始化器.它只执行一次,并且仅在需要时执行.(如果您从未触摸过Singleton该类,则初始化程序将不会执行.)