【问题标题】:Category of object-orientation in Ruby [closed]Ruby中的面向对象类别[关闭]
【发布时间】:2015-06-02 01:14:24
【问题描述】:

面向对象的语言可以分为两种:

  • 基于类:类似于 C++
  • 基于原型:如 JavaScript。

Ruby 有类,所以它是基于类的。但它的类也是一个对象。那么 Ruby 仍然是一种基于类的语言,还是介于两者之间?这是第三类吗?

编辑:

好的,我想知道的是,其他基于类的语言是否也像 ruby​​ 一样做同样的事情,比如创建 Class 类的类对象?

【问题讨论】:

    标签: ruby oop


    【解决方案1】:

    在面向对象的语言中,除了对象之外,类还能是什么?如果面向对象语言中最重要的东西之一不是对象,那么该语言就不会非常面向对象,不是吗?

    类是许多基于类的 OO 语言中的对象。 Smalltalk、Python、Ruby、Newspeak,应有尽有。有些语言不是这样的,例如Java 和 C#,但即使在那里,您也可以获得代表类的反射代理对象。

    【讨论】:

    • 是的,你必须有某种类的表示。谢谢。我读过一些关于不同 OO 语言的书,只有 ruby​​ 书谈论表示。所以我有点认为其他 OO 语言中的课程是一些抽象概念,并没有与对象相关联:)
    【解决方案2】:

    ClassClass 类的一个实例。 Ruby 中没有任何东西反对它基于类。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-04-28
      • 2014-12-15
      • 1970-01-01
      • 1970-01-01
      • 2013-06-19
      • 2013-02-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多