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

Ruby如何将方法转换为符号作为参数?

发布时间:2020-12-17 02:57:04 所属栏目:百科 来源:网络整理
导读:respond_to?方法采用参数,要检查的方法,但作为符号. 为什么作为符号? ruby如何将方法转换为符号? 解决方法 没有魔力.方法通过名称附加到对象上,这是一个符号.事实上,Math.sin(2)基本上是Math.send(:sin,2)的简写(“发送消息:sin到Math对象,带参数2”).
respond_to?方法采用参数,要检查的方法,但作为符号.

为什么作为符号? ruby如何将方法转换为符号?

解决方法

没有魔力.方法通过名称附加到对象上,这是一个符号.事实上,Math.sin(2)基本上是Math.send(:sin,2)的简写(“发送消息:sin到Math对象,带参数2”).您也可以自己访问方法:Math.method(:sin)将为您提供关联的Method对象(其名称为Math.method(:sin).name,当然是:sin),Math.methods将列出所有已实现的方法的名称. Math.respond_to?(:sin)基本上可以重写为Math.methods.include?(:sin)(这是简化的,因为它忽略了respond_to_missing?,但……足够接近这个讨论).

这样想吧.你去了朋友的家,他们的母亲回答了门.你问,“你好,蒂姆在这儿吗?”你不需要实际拖着你的朋友到门口问“你好,这个人在这里吗?”这个名字也适用.

(编辑:李大同)

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

    推荐文章
      热点阅读