【发布时间】:2015-06-26 13:28:46
【问题描述】:
我有一个包含许多静态方法的类。每个人都必须调用一个通用方法,但我尽量不公开后一种方法。将其设为私有只会允许从自己的类实例进行访问?受保护似乎也不能解决这里的问题。
如何在静态上下文中隐藏 do_calc 以免被外部调用? (让它可以从前两个静态方法中调用。)
class Foo
def self.bar
do_calc()
end
def self.baz
do_calc()
end
def self.do_calc
end
end
【问题讨论】:
-
你有什么问题?
-
为什么
self.bar调用带括号的方法而self.baz不调用? -
我认为
private_class_method可以满足您的要求。
标签: ruby static encapsulation