面向对象和基于对象的编程语言有什么区别? JavaScript是面向对象还是基于?
答案 0 :(得分:15)
在计算机科学中,基于对象的术语有两种不同的含义:
面向对象编程的某种限制版本,其中一个或多个限制适用:(a)没有隐式继承,(b)没有多态,(c)只有非常简化可用值的子集是对象(通常是GUI组件)。
基于原型的系统(即基于“原型”对象的系统,不是任何类的实例)。
Javascript是基于对象的。
答案 1 :(得分:3)
面向对象基于消息传递,不涉及类或继承。
"面向对象" Alan Kay博士创造的劫持者被劫持 C ++,Java和Co,Alan Kay博士清楚地表明OO是消息,而不是 类。 Alan Kay On OO博士 " OOP对我来说只意味着消息传递,本地保留和保护 隐藏状态过程,以及所有事物的极端后期绑定。"
Erlang,LISP,Smalltalk是OO编程语言,而不是基于对象的C ++,Java,c#等。
答案 2 :(得分:0)
面向对象的语言
面向对象的语言没有内置对象。它具有OOP的所有功能。面向对象的语言是C ++,C#,Java等
基于对象的语言
基于对象的语言不支持多态性和继承等OOP的所有功能。它有内置对象,如javascript有window对象。语言是Javascript,VB等。
答案 3 :(得分:0)
我发现此问题的答案有两种版本。
首先,您必须定义什么是面向对象的语言。
我的英语不是很好。如果您是中国人,则可以看到Chinese wiki。