实现Singleton的class:






















注意:该class的getInstance方法前没有synchronized关键字,那么到底该方法前有没有必要加这个关键字呢?
定义如下的Test类:














那么执行结果是:
instance created...
instance created...
instance created...
SimSingleton中的instance被创建了3次。
有悖于singletonPattern的设计目的了。加上synchronized后,执行结果为:
instance created...
所以 在getInstance方法前一定别忘了加上synchronized关键字。