MonoState 模式


目的
强制执行类似于在所有实例之间共享相同状态的行为。

适用场景

  • 必须在类的所有实例间共享相同的状态。
  • 通常,这种模式可以在任何可能使用Singleton的地方使用。但是Singleton的使用并不透明,而Monostate则是透明的。
  • Monostate比Singleton有一个主要优势。子类可以根据需要修饰共享状态,因此可以提供与基类不同的动态行为。

典型用例
  • 日志类
  • 管理与数据库的连接
  • 文件管理器