在Ruby中,如何创建私有类常量?
class Person
SECRET='xxx' # How to make class private??
def show_secret
puts "Secret: #{SECRET}"
end
end
Person.new.show_secret
puts Person::SECRET # I'd like this to fail
在Ruby中,如何创建私有类常量?
class Person
SECRET='xxx' # How to make class private??
def show_secret
puts "Secret: #{SECRET}"
end
end
Person.new.show_secret
puts Person::SECRET # I'd like this to fail
您还可以将常量更改为类方法:
def self.secret
'xxx'
end
private_class_method :secret
这使得它可以在类的所有实例中访问,但不能在外部访问.