MiškoHevery写的一篇名为Root Cause of Singletons的文章:
现在,有一种Singleton可以。这是一个单例,其中所有可到达的对象都是不可变的。如果所有对象都是不可变的,那么Singleton没有全局状态,因为一切都是常量。
单例始终具有全局状态,因为单例的所有设计模式都会公开对单个实例的全局引用。
但为什么不可变的单身人士没有全球状态?
答案 0 :(得分:0)
coqc
答案 1 :(得分:0)
将这种Singleton想象成作者只是一个静态的常量对象。
单身模式不一定能保证不变性。因此,假设您有一个Singleton,代码中的许多其他模块/组件/对象使用它的状态更改。这可能会导致意外行为。对象A使单例处于状态A,但没有什么能保证单身人士的状态在一段时间后不会成为B.
我认为这是作者试图在此概述的内容。这种单例示例是配置对象或静态地图。