单例模式核心思想

2021-04-22 18:00:37
单例模式核心思想,就是让实例化对象这种行为,变得可控。下面这个 Foo 类,就只会有一个对象: ``` class Foo { private static Foo foo; // 构造方法私有化,不让外面直接 new 对象 private Foo() { } // 提供一个静方法,在内部实例化对象,如果已有对象,则直接返回对象 public static Foo getInstance() { if (foo == null) { foo = new Foo(); } return foo; } } ``` 这个简单的单例模式写法,未考虑 clone 或并发等特殊场景