为什么在这个实例方法中需要“self”?

Why is `self` needed inside this instance method?

通过 Well Grounded Rubyist。

class Car
  @@cars = {}
  attr_reader :make
  def make_mates
    @@cars[self.make]
  end
  ...
end

为什么我们在make_mates实例方法中需要self?当我 运行 没有 self 的代码时,它的工作原理是一样的。

在那种情况下你不需要它。

如果要分配给属性,则只需要使用 self 来引用它,以区别于分配给本地。