在Ruby中“知道”类名的类方法?
发布时间:2020-12-16 19:53:47 所属栏目:百科 来源:网络整理
导读:我想要一个继承的 ruby类通过类方法“知道”它的类名.这最好由一个例子说明: class Parent def self.whoami ?? endendclass Child Parent #No code should be needed.end 所以我应该可以打电话: Parent.whomai 并期望返回“父母”,然后我可以打电话: Chil
我想要一个继承的
ruby类通过类方法“知道”它的类名.这最好由一个例子说明:
class Parent def self.whoami ?? end end class Child < Parent #No code should be needed. end 所以我应该可以打电话: Parent.whomai 并期望返回“父母”,然后我可以打电话: Child.whoami 并期待“孩子”的回归我有一种感觉,在传统的语言这可能是不可能的.但是Ruby的metaprogramming模型让我惊讶不已.有什么想法吗?提前致谢. 解决方法
Class Method是一种方法,其中CLASS是接收者,因此要找到调用该方法的对象(您似乎在尝试这样做)只需检查self的值即可.
class Parent def self.whoami self end end class Child < Parent end puts Parent.whoami #=> Parent puts Child.whoami #=> Child (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |