我读过" Ruby实例变量什么时候设置? "但我在使用类实例变量时有两种想法.
类变量由类的所有对象共享,实例变量属于一个对象.如果我们有类变量,那么使用类实例变量的余地就不大了.
有人可以解释这两者之间的区别以及何时使用它们?
这是一个代码示例:
class S
@@k = 23
@s = 15
def self.s
@s
end
def self.k
@@k
end
end
p S.s #15
p S.k #23
Run Code Online (Sandbox Code Playgroud)
我现在明白了,Class Instance Variables不会传递给继承链!
ruby instance-variables class-variables class-instance-variables