我有一个继承自Hash
的类。当这个类本身被继承时,我想知道initialize
方法中继承类的类名。当我致电self
时,我会收到{}
,但不知道name
方法。
class Foo < Hash
def initialize
# Here i want to know that the class is Foo
end
end
如何获取班级名称?
答案 0 :(得分:9)
这很简单:self.class.name
答案 1 :(得分:1)
if self.kind_of?(Foo)
#whatever you want
end
这是由于初始化程序的意图,当你调用Foo.new时,实例将永远是类Foo或子类的实例,所以我对你要做的事情感到困惑。