当年话下
我找到了一个非常简单的解释class << self , Eigenclass和不同类型的methods在这里博客.在Ruby中,有三种方法可以应用于类:实例方法单例方法类方法实例方法和类方法与其他编程语言中的同名方法几乎相似。class Foo
def an_instance_method
puts "I am an instance method"
end
def self.a_class_method
puts "I am a class method"
end endfoo = Foo.newdef foo.a_singleton_method
puts "I am a singletone method"end访问Eigenclass(其中包括单例方法)具有以下语法(class <<):foo = Foo.newclass << foo def a_singleton_method
puts "I am a singleton method"
endend现在,您可以为self哪一门课Foo在这方面:class Foo
class << self
def a_singleton_and_class_method
puts "I am a singleton method for self and a class method for Foo"
end
endend