module MyMod
def fun1
#...
end
def MyMod.fun2
#...
end
end
fun1 和 MyMod.fun2 有什么区别?
fun1
是一个实例方法。只有当任何类在其定义中包含该模块时才能访问它。
p RUBY_VERSION
module MyMod
def fun1
p "hi"
end
def MyMod.fun2
p "hello"
end
end
class Foo
include MyMod
end
Foo.new.fun1
MyMod.fun2
p MyMod.instance_methods(false)
p MyMod.public_class_method("fun2")
输出:
"2.0.0"
"hi"
"hello"
[:fun1]
MyMod