如何在 Ruby 中使用单例设计模式创建类?
-
08-06-2019 - |
题
单例模式是一种设计模式,用于将类的实例化限制为一个对象实例。虽然我知道如何用 C++ 和 Java 编写单例模式,但我想知道是否有人知道如何在 Ruby 中实现它?
解决方案
其实,上面的回答并不完全正确。
require 'singleton'
class Example
include Singleton
end
您还需要包含 require 'singleton' 语句。
其他提示
使用单例模块:
class Clazz
include Singleton
end
看 http://www.ruby-doc.org/stdlib/libdoc/singleton/rdoc/index.html 了解更多信息。
我相信您可以使用模块达到相同的效果,尽管它不是“单例模式”,但您可以通过这种方式拥有全局状态(这就是单例!顽皮的全局状态!)。
不隶属于 StackOverflow