diff --git a/notes/设计模式 - 单例.md b/notes/设计模式 - 单例.md index b1dbf698..c466d6df 100644 --- a/notes/设计模式 - 单例.md +++ b/notes/设计模式 - 单例.md @@ -38,7 +38,7 @@ public class Singleton { 线程不安全问题主要是由于 uniqueInstance 被实例化多次,采取直接实例化 uniqueInstance 的方式就不会产生线程不安全问题:静态变量在类初始化时赋值,类的初始化由 JVM 加锁且只执行一次。 -但是直接实例化的方式也丢失了延迟实例化带来的节约资源的好处。 +但是直接实例化的方式也丢失了延迟实例化带来的节约资源的好处。实例在类初始化时创建,不一定在程序启动时;访问类中其它非常量静态成员或通过反射(例如 Class.forName())触发类初始化,都会使实例早于第一次调用 getUniqueInstance() 创建。 ```java private static Singleton uniqueInstance = new Singleton();