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

在Ruby中,模块中定义的类如何知道模块的常量?

发布时间:2020-12-17 03:10:07 所属栏目:百科 来源:网络整理
导读:我试图理解模块中定义的类如何知道模块的常量.这是我的意思的一个例子: module Car class Wheel end class Seat p Wheel # Car::Wheel endend 我知道这很明显,但由于Wheel在Seat的层次结构中无处可去,我不明白它是如何访问它的. 解决方法 如果你引用一个类
我试图理解模块中定义的类如何知道模块的常量.这是我的意思的一个例子:

module Car
  class Wheel
  end

  class Seat
    p Wheel        # Car::Wheel
  end
end

我知道这很明显,但由于Wheel在Seat的层次结构中无处可去,我不明白它是如何访问它的.

解决方法

如果你引用一个类常量,Ruby将首先在同一个模块中查找它,然后在根目录中找不到它.

因此,由于Seat和Wheel都在Car模块中,如果你寻找Wheel,它将首先寻找Car :: Wheel,然后是:: Wheel.由于Car :: Wheel存在,您可以获得该引用.

(编辑:李大同)

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

    推荐文章
      热点阅读