所以我最近才开始写一些 Ruby,虽然我了解模块是如何工作的,但以下行为仍然让我感到厌烦。
module ModuleA
def a_greet
'Hello from module A'
end
end
module ModuleB
def b_greet
'Hello from module B'
end
end
include ModuleA
include ModuleB
# WHY DOES THIS WORK !!!!!
p ModuleA.b_greet
我知道可以在不指定的情况下调用模块中的函数,Module.
并且我永远不会以这种方式编写代码,但是我不明白为什么在显式声明 ModuleA 时可以调用 ModuleB 中包含的方法?