gpt4 book ai didi

ruby - 为什么 ruby​​s public 和 private 关键字/方法返回对象?

转载 作者:数据小太阳 更新时间:2023-10-29 07:28:39 25 4
gpt4 key购买 nike

这段代码:

a = private
p a
p a.class

给我:

Object
Class

我不确定 privatepublic 是 Ruby 中的关键字还是方法,但是,为什么它们返回 Object (我的意思是类) ?这种奇怪的行为是否有历史或实际原因?

我已经用 Ruby 2.1、Rubinius 2.2.6 和 JRuby 1.7.12 测试过了。

最佳答案

因为它们不是关键字,而是模块定义的方法:http://www.ruby-doc.org/core-2.1.2/Module.html#method-i-private .他们返回一个接收调用的模块,如果你在应用程序的顶层调用它,这个接收者是对象类。

关于ruby - 为什么 ruby​​s public 和 private 关键字/方法返回对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23793431/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com