可能重复:
Difference between class variables and class instance variables?
我想了解其中的区别:
class Blog
class << self
def tags (default_tags)
@tags ||= default_tags
end
end
end
现在,Blog.tags始终返回最初分配的内容。因为我正在使用Rails,所以每个请求就是这种情况。
上面的@tags是类级实例变量,似乎与@@ tags类似,它是类变量。它们实际上是一样的吗?两者之间应该注意哪些差异,并决定选择哪一个而不是另一个?
或者我的理解完全错了?
ps:这显然是一个简单的例子