首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >类类-实例与类方法

类类-实例与类方法
EN

Stack Overflow用户
提问于 2011-10-04 02:23:01
回答 1查看 204关注 0票数 6

它是如何工作的呢?运行以下命令时,将打印"hi from class"两次。在ruby内部发生了什么,使得它表现成这样?实际上,我不是在为class创建一个实例方法吗

代码语言:javascript
复制
class Class
  def foo
    puts "hi from class" 
  end
end

Class.foo
x = Class.new
x.foo
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-10-04 02:28:03

我不知道您是否意识到这一点,但是当您执行class Class ... end时,您并不是在创建一个名为Class的新类,而是在重新打开现有的类Class

由于Class是所有类都是其实例的类,这意味着Class是其自身的一个实例。正因为如此,您可以直接在Class上调用Class的任何实例方法,就像在任何其他类上一样。

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7639041

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档