This question already has answers here:
Ruby (and Rails) nested module syntax

(4个答案)


去年关闭。




两者之间有什么区别吗
class Bus::Driver
end


module Bus
  class Driver
  end
end

如果不是,则首选哪种语法?

最佳答案



唯一的区别是在 class Bus::Driver 中,Bus 模块 必须已经定义了 ,而 不代表第二个。



这不是一个 build 性的问题,但我个人更喜欢第二个,因为它明确指出 Bus 是一个模块,而第一个我第一眼看不到 Bus 是一个模块还是一个类。

关于Ruby 模块声明,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16529948/

10-13 02:20