ruby - 所有单例方法都是公开的吗?

标签 ruby singleton-methods

单例方法一定是公开的吗?如果不是,私有(private)/ protected 单例方法什么时候有用?

最佳答案

单例方法不一定需要公开。私有(private)/ protected 单例方法在与常规私有(private)/ protected 方法相同的情况下很有用 - 例如,作为您不打算在类外部调用的辅助方法。

class Foo
end

f = Foo.new

class << f
  def foo
    helper
    # other stuff
  end

  private
  def helper
  end
end

关于ruby - 所有单例方法都是公开的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28203988/

相关文章:

ruby-on-rails - 核心 Ruby on Rails 3 依赖多少 gem 和 gem-authors?

ThreadStatic 的 C# 单例模式设计

c# - 单例设计模式中私有(private)构造函数的需求是什么?

arrays - Ruby——通过键将子数组的值添加到数组中

ruby-on-rails - 来自 URL 的 Ruby on Rails 和 JSON 解析器

ruby-on-rails - => 运算符与 = 运算符

java - Spring MVC 单例 Controller - 多个下载请求

ios - 单例实现。阻止外部使用的 alloc 和 init 方法

ruby-on-rails - Mongoid 更新查询将其他属性设置为 nil?