John Nunemaker最近在博客中谈到了在Ruby中定义类方法的各种方式,提供了以下三种选择:
# Way 1
class Foo
def self.bar
puts 'class method'
end
end
# Way 2
class Foo
class << self
def bar
puts 'class method'
end
end
end
# Way 3
class Foo; end
def Foo.bar
puts 'class method'
end
- 你更喜欢用哪种方式来做这件事?
- 除了上述方式,你还有其他喜欢的方式吗?
- 如果你使用多种方式,那么在什么情况下会使用它们?