`

ruby 元编程 3 重访类

    博客分类:
  • ruby
 
阅读更多

ruby当中类自身也是对象。

看如下代码

puts String.class #Class
puts "hello".class #String

 也就是说类是Class的实例,所以说,类方法就是Class的实例方法。

 

Class都有哪些实例方法呢?

2.0.0-p247 :002 > Class.instance_methods(false)
 => [:allocate, :new, :superclass]

 Class的superclass

2.0.0-p247 :002 > Class.superclass
 => Module 

 Module的superclass

2.0.0-p247 :003 > Module.superclass
 => Object 

所以说,类是Class的对象,Class从Module继承,Moudle是快,可以想象为内存块,所以Class 实际上就是有 => [:allocate, :new, :superclass]三个方法的块。

 对象模型图



 

  • 大小: 150.8 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics