我是红宝石新手。有一个关于静态和实例变量的非常基本的问题。
class Test
def self.init
@@var_static = 1
@member = 2
end
def self.print
puts "@@var_static: #{@@var_static}"
puts "@member: #{@member}"
end
end
Test.init
Test.print
为什么上面的代码允许在静态方法中初始化成员变量:@member:Test::init?我的理解是,@member 的使用会引发错误,因为它与 Test 类的任何实例无关。但不会抛出任何错误。