加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby – 这种’元类’方法有什么作用?

发布时间:2020-12-17 02:41:30 所属栏目:百科 来源:网络整理
导读:def metaclass; class self; self; end; end 有人可以为我解读这一行.我猜它被挤进一个的事实也没有多大帮助.但是在2天前开始看ruby时,我担心我可能会错误地分开它. 解决方法 打破它: def metaclass class self self endend 请注意,这可以作为Ruby 1.9.2(Ob
def metaclass; class << self; self; end; end

有人可以为我解读这一行.我猜它被挤进一个的事实也没有多大帮助.但是在2天前开始看ruby时,我担心我可能会错误地分开它.

解决方法

打破它:

def metaclass
  class << self
    self
  end
end

请注意,这可以作为Ruby 1.9.2(Object#singleton_class)中的内置方法使用.

这样做是通过打开相同的via类<<来返回对象的singleton_class / metaclass / eigenclass自我然后归还(自我).如果您对元类本身感到困惑,我建议您阅读以下文章: The Ruby Object Model – Structure and Semantics

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读