微信

使用微信服务,更方便

职友集>程序员面试题 > 混合OOP语言和纯OOP语言你了解吗?

混合OOP语言和纯OOP语言你了解吗?

2015-09-30 06:30:02 阅读( 179 )

2076人 收藏本页

标签:程序员面试题

纯OOP语言只允许应用一种程序设计模型:OOP。你可以声明类和方法,但不能使用老式的普通函数、过程和全局变量。
在以上三种语言中,只有Java是纯OOP语言(Eiffel和Smalltalk也是),初看上去纯OOP是个很好的主意,然而,你最终还是会使用许多静态方法和静态数据。除了语法更复杂,这与使用全局函数和数据没有任何区别。我个人的观点是,纯OOP语言对于OOP的初学者非常有帮助,因为他将不得不使用(并学习)面向对象程序设计模型。另一方面,C++和Object Pascal都是典型的混合语言,他们允许程序员使用传统的C或Pascal程序设计方法。
要注意的是,Smalltalk大大扩展了纯面向对象的概念。在Smalltalk中,所有预定义数据类型,例如整型、字符型,甚至整个语言架构(例如循环指令)都是以对象封装的。这完全是出于对纯理论的兴趣,因为这样极大的降低了程序的执行效率。Java没有做得如此绝对,它允许使用传统的,非面向对象的数据类型(虽然它提供了对传统类型的类封装)。

来自IT公司面试手册

下一篇:类与对象有什么区别?

上一篇:编译期类型检查 与 运行期类型检查有什么区别?

亲~ 如果您有更好的答案 可在评论区发表您独到的见解。

您想查看更多的信息: 面试题