|
面向对象语言(object oriented language)用于描述面向对象程序的程序设计语言。面向对象程序设计以对象为核心,对象是程序运行时刻的基本成分。语言中提供了类、继承等设施。 面向对象语言借鉴了20 世纪50 年代的人工智能语言LISP,引入了动态绑定和交互式开发环境的思想;始于60年代的离散事件模拟语言SIMULA67,引入了类的概念和继承;成形于70 年代的Smalltalk。面向对象语言的发展有两大方向: 一是纯面向对象语言,如Small talk、EIFFEL等;另一是混合型面向对象语言,即在过程式语言或其它语言中加入类、继承等成分,如C + +、Objective-C等。 面向对象语言刻画客观系统较为自然,便于软件扩充与复用。其主要特点有四个方面:①识认性,系统中的基本构件可识认为一组可识别的离散对象;② 类别性,系统具有相同数据结构与行为的所有对象可组成一类;③多态性,对象具有唯一的静态类型和多个可能的动态类型;④ 继承性, 在基于层次关系的不同类中共享数据和操作。其中,前三者为基础, 继承是特色,四者(有时再加上动态绑定)结合使用,体现出面向对象语言的表达能力。 一般认为, 较典型的面向对象语言有:①SIMULA 67,支持单继承和一定含义的多态和部分动态绑定;②Smalltalk,支持单继承、多态和动态绑定;③ EIFFEL,支持多继承、多态和动态绑定;④C + +,支持多继承、多态和部分动态绑定。四种语言涉及概念的含义虽基本相同,但所用术语有别。 【出处】张效祥. 计算机科学技术百科全书,清华大学出版社,2018年5月第3版。
|