3

我一直在阅读 Wirth 关于 Oberon 的书籍——或者至少尝试阅读——当我想弄清楚 Oberon 中的面向对象编程发生了什么时,我遇到了一个心理障碍。

我知道他的方法应该通过避免“标准” OOP 语法来简化面向对象的编程,他将其标记为犯罪,好像它在某种程度上是犯罪,也许我只是太扎根于类、方法等......种类思考,但有人可以将 Oberon 的方法翻译成标准的 OOP 语言,或者至少在概念上解释它。

4

1 回答 1

3

您可以通过比较 Ada 的标记类型(在Ada 95 Rationale: II.1 Programming by Extension中检查)与 Oberon-2 的类型标记(在 Oberon-2 中的面向对象编程:运行时数据结构中讨论)得到一些见解,在此处引用. 两者都使用具有隐藏类型信息的记录结构来实现继承和多态。另请参阅此处引用的 Ada 95 和 Java 的面向对象特性的比较

附录:那么他们只是将程序与记录相关联吗?

Oberon 记录类型以类似于 Object Pascal 中的对象类型的方式封装过程和数据。Ada 标记的记录封装了数据,而封闭的包封装了子程序和记录。

于 2013-06-18T08:14:22.797 回答