gpt4 book ai didi

ruby - Ruby 中带有内部类的模块声明

转载 作者:太空宇宙 更新时间:2023-11-03 18:10:48 25 4
gpt4 key购买 nike

例如,我有文件 list.rb

module List
class Base
#...
end
end

所以在外部文件中,这个类可以作为 List::Base 访问。

假设我创建了另一个文件 list_base_extension.rb

我能做到:

module List
class BaseExtension < Base
#...
end
end

或者

class BaseExtension < List::Base
end

这是否相等?

或者那么BaseExtension就不会被认为是模块的一部分,而是直接继承自List::Base

最佳答案

不,这不相等。如果你使用

module List
class BaseExtension < Base
end
end

您定义了一个名为 List::BaseExtension 的类,它继承自 List::Base。相反,用

class BaseExtension < List::Base
end

您定义了一个名为 BaseExtension 的类,它继承自 List::Base。该类将在 List 的范围之外定义。

关于ruby - Ruby 中带有内部类的模块声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34598081/

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