这种方式同样利用了 classloder的机制来保证初始化 instance 时只有一个线程。
而且还能实现按需加载,当程序启动 SingleForClassLoad 类被装载了,instance不一定被初始化。
因为 Instance 类没有被主动使用,只有显示通过调用getInstance方法时,才会显示装载 Instance 类,从而实例化instance。
想象一下,如果实例化 instance 很消耗资源,我想让他延迟加载,这种方式无疑是一种比较好的选择!
{ () { } () { .; } { (); } }