【问题标题】:Top level methods: Why they become private instance methods in Object? Why not public?顶级方法:为什么它们成为 Object 中的私有实例方法?为什么不公开?
【发布时间】:2012-01-09 07:30:00
【问题描述】:

在 Ruby 的 Object 私有实例方法中创建顶级方法背后的原因是什么?如果他们以某种方式被公开,这将如何改变事情?

【问题讨论】:

  • 好的,我刚刚意识到,如果将顶级方法作为公共方法混合到 Object 中,这将允许您向任何对象发送此消息。这将是反直觉的。留下这个,以防有人用谷歌搜索同样的问题。
  • 在 StackOverflow 上回答您自己的问题是完全可以接受的,甚至被认为是一种很好的风格。 想通了,你值得名誉。另外,如果有人确实在谷歌上搜索过同样的问题,它不会显示为“未回答”。
  • @JörgWMittag:希望它会成为一个答案,但根据meta.stackexchange.com/questions/86185/…,slindsey 目前只有 58 个代表,你需要 100 个代表在 8 小时内自我回答>
  • @JörgWMittag:根据meta.stackoverflow.com/privileges/edit-community-wiki,他还要等8个小时才能发布答案
  • 现在可以回答你的问题了吗?

标签: ruby language-design access-specifier


【解决方案1】:

如果将顶级方法作为公共方法混合到 Object 中,这将允许您向任何对象发送此消息。这会违反直觉。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-05-07
    • 2011-03-30
    • 1970-01-01
    • 1970-01-01
    • 2013-12-01
    • 2014-03-20
    • 2010-09-09
    • 2017-07-07
    相关资源
    最近更新 更多