本文的概念内容来自深入浅出设计模式一书
由于我在给公司做内培, 所以最近天天写设计模式的文章....
单体模式 Singleton
单体模式的目标就是只创建一个实例....实际中有很多种对象我们可能只需要它们的一个实例, 例如: 线程池,缓存, 弹出的对话框, 用于保存设置的类, 用于logging的类, 硬件设备驱动对象等等.
一段对话:
A: 如何创建一个对象?...其他问题
上面巧克力锅炉那道题你可能写好了, 但是可能会出现这个问题:
锅炉可能在里面有液体的情况下又进行了fill填充动作. 这是怎么回事?
是不是其他线程引起的这个问题?...这样两个线程就不可能同时进入该方法了.
但是这种方法开销很大, 这有时会成为一个问题....那就不如早点把实例给创建出来, 而不是懒创建.
例如:
?
使用静态的成员引用, 这样类在加载的时候就把实例创建出来了(保证在任何线程访问之前就会创建出来).
3.