joe*_*lis 15 ruby module class-method instance-methods
在什么样的情况下代码:
module M
extend self
def greet
puts "hello"
end
end
Run Code Online (Sandbox Code Playgroud)
使用更有利于说:
module M
def self.greet
puts "hello"
end
end
Run Code Online (Sandbox Code Playgroud)
在顶部,一个是扩展的实例方法,后者只是一个类方法,但在调用任一方法时,你必须使用M.greet,对吧?我很好奇是否有人可以说明何时使用一个代码而不是另一个代码.谢谢!
hor*_*guy 15
第一个例子通常是人们实现功能的方式module_function
(当他们不知道这种方法的存在时).
A module_function
既是实例方法又是类方法.在您的第二个代码示例中,该方法只是一个类方法.
归档时间: |
|
查看次数: |
3426 次 |
最近记录: |