面向对象语言机制研究

来源 :科技与企业 | 被引量 : 0次 | 上传用户:jackzeng6699
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘 要】面向对象语言分为纯面向对象语言和混合型面向对象语言两种形式,纯面向对象语言适合面向对象方法研究和快速原型的实现;混合型面向对象语言则注重于提高系统的运行速度,使传统使用结构化编程方式的程序员容易接受面向对象思想。本文就面向对象语言机制进行探讨研究。
  【关键词】面向对象;语言机制
  面向对象语言发展有两大方向,一是纯面向对象的语言,如Java等语言;另一类是混合型面向对象语言,也就是在过程语言或其他语言中增加了类、继承等面向对象机制,如C++等语言。就两种形式的面向对象语言比较而言,纯面向对象语言更加适合面向对象方法研究和快速原型的实现;而混合型面向对象语言则更加注重于提高系统的运行速度,使传统使用结构化编程方式的程序员容易接受面向对象思想。面向对象程序设计语言以对象为中心,对象是程序运行时的基本成分。面向对象程序设计语言中提供了类、继承等机制。面向对象的程序设计即为设计类及由类构造程序的方法和过程,用计算机对象模拟现实世界。成熟的面向对象的程序设计语言通常都提供丰富的类库和强有力的开发环境。
  1.支持类与对象概念的机制:面向对象语言都允许用户动态创建对象,且可以用指针引用动态创建的对象。允许动态创建对象,就意味着系统必须处理内存管理问题,如果不及时释放不再需要的对象所占用的内存,动态存储分配就有可能耗尽内存,出现内存不足的问题。通常,对这类问题的解决方法有两种,一种是由语言的运行机制自动管理内存,即提供自动回收“垃圾”的机制;另一种是由程序员编写释放内存的代码。自动管理内存不仅方便而且安全,但是必须采用先进的垃圾收集算法才能减少开销。某些面向对象的语言(如C++)允许程序员定义析构函数。每当一个对象超出范围或被显式删除时,就自动调用析构函数。这种机制使得程序员能够方便地构造和唤醒释放内存的操作,却又不是采用垃圾收集机制。
  2.实现整体-部分结构的机制:实现整体-部分结构的机制有两种方法,一种是使用指针实现整体-部分结构,另一种是使用独立的关联对象实现整体-部分结构。一般来说,通过增加内部指针可以方便地实现关联,使用指针是最容易的实现方法。但是,大多数现有的面向对象语言并不显式支持独立的关联对象。
  3.实现一般-特殊结构的机制:实现一般-特殊结构的机制,包括实现继承的机制和解决名字冲突的机制。所谓解决名字冲突,是指在支持多重继承的语言中,处理在多个基类中可能出现的重名问题。通常,有些语言拒绝接受有名字冲突的程序,另一些语言提供了解决冲突的协议。无论使用何种语言,程序员都应该尽力避免出现名字冲突。
  4.实现属性和服务的机制:实现属性的机制应该着重考虑的几个因素:支持实例连接的机制;属性的可见性控制;对属性值的约束。对于实现服务的机制来说,主要应该考虑下列因素:支持消息连接的机制;控制服务可见性的机制;动态联编:所谓动态联编,是指应用系统在运行过程中,当需要执行一个特定服务的时候,选择(或联编)实现该服务的适当算法的能力。动态联编机制使得程序员在向对象发送消息时拥有较大自由,在发送消息前,无须知道接收消息的对象当时属于哪个类。
  5.类型检查机制:按照编译时进行类型检查的严格程度,程序设计语言分为三种类型:弱类型、强类型和混合型。弱类型:语言仅要求每个变量或属性隶属于一个对象。强类型:语法规定每个变量或属性必须准确地属于某个特定的类。面向对象语言包含不同类型的语言,如,Smalltalk实际上是一种无类型语言;C++则是强类型语言。混合型语言:为提高操作效率,允许属性值不是对象而是某种预定义的基本类型数据,如C++等。强类型语言有两个优点:有利于在编译时发现程序错误;增加了优化的可能性。通常使用强类型编译型语言开发软件产品,使用弱类型解释型语言快速开发原型。一般来说,强类型语言有助于提高软件的可靠性和运行效率,现代的程序语言都是强类型的,大多数理论支持强类型检查。
  6.类库机制:目前,所有的面向对象的程序设计语言都提供一个实用的类库。某些语言本身并没有规定提供什么样的类库,而是由实现这种语言的编译系统自行提供类库。有了类库,程序员可以重用许多软构件,不必重新编写,这为实现软件重用带来很大方便。类库中通常包含实现通用数据结构的类,例如动态数组、表、队列、栈和树等,通常把这些类称为包容类。类库中还包含了实现各种关联的类。更完整的类库通常还提供了接口类和图形库。
  7.效率机制:早期的面向对象语言是解释型而不是编译型的。大家认为这些语言缺点是效率低。当今面向对象语言都拥有完整类库,类库中提供了更高效的算法和更好的数据结构,与非面向对象语言相比,得到更快运行的代码。如,库中已经提供了算法先进、代码可靠的一类数据结构,程序员再不必编写像实现哈希表或平衡树算法的代码了,因此,提高了编程效率和运行效率。
  8.永久保存对象机制:在一个程序都对数据进行处理时,希望数据能够长时间保存下来。保存数据需要提供某种保存数据的方法。长期保存数据主要有两个原因:①为实现在不同程序之间传递数据,需要保存数据;②为恢复被中断了的程序的运行,首先需要保存数据。对于不同面向对象语言,长期保存数据的方法也不同。有些面向对象语言(例如C++)没有提供直接存储对象的机制,这些语言的用户必须自己管理对象的输入/输出,或者购买面向对象的数据库管理系统。有些面向对象语言(Smalltalk)把当前的执行状态完整地保存在磁盘上。还有一些面向对象语言提供了访问磁盘对象的输入/输出操作。通过在类库中增加对象存储管理功能(EIFFEL采用策略),可在开发环境中提供对象存储管理功能,而且还不改变语言定义或不增加关键字。然后,从“可存储的类”中派生出需要永久保存的对象,该对象自然继承了对象存储管理功能。
  9.类模板机制:EIFFEL语言中就有参数化类,C++语言也提供了类模板。Visual Basic和Visual C++提供了函数模板和类模板。
  10.开发环境机制:在开发大型系统的时候,还可能需要系统构造工具和变动控制工具。因此应该考虑语言本身是否提供了这种工具,或者该语言能否与现有的这类工具很好地集成起来。
  结论:面向对象程序設计语言以对象为中心,提供了类、继承等机制,每个对象是程序运行时的基本成分。面向对象的程序设计是设计类及由类构造程序的方法和过程,以计算机对象模拟现实世界,提供丰富的类库和强有力的开发环境。完善的机制是面向对象语言强大生命力的体现。研究和发展面向对象语言机制有其实用价值和学术价值。
其他文献
[摘要]复合注浆是将静压注浆和高压旋喷浆法进行时序结合,发挥两种注浆技术优势的一种新型注浆方法。本文结合实际工程施工,对地基加固的复合注浆施工技术进行了粗浅的探讨。   [关键词]复合注浆;加固;地基  1、复合注浆施工技术的特点   (1)复合注浆适用加固地层范围广,既可适用于加固渗透性大的地层(如砂卵石层),又可适用于渗透性较差地层(如粘土、粉土和粉细砂层),还可以用来加固溶岩地层的地下溶洞和
【摘 要】在电力市场环境下,发电公司的售电收益是和电力市场的电价波动紧密相关的。发电公司收益的多少是随发电机组的调整计划的不同而改变的,但是,发电公司自行决定的的检修计划有可能会造成电力系统的不可靠运行,在这样的情况下系统调度机构如独立系统运行机构(ISO)对发电公司申报的检修计划进行协调就非常的有必要,本文重点研究发电机组检修计划的调整机制的现状及解决方法,保证电力系统安全可靠性和发电机公司间
制丝线设备的运行效率对烟草企业的经济效益起着至关重要的作用,本文作者通过对制丝线设备存在问题的原因进行分析,发现制丝线设备故障主要是由线路接触不良、参数设置错误、触
【摘 要】在当前的企业中,合同管理属于企业管理的一个重要环节。本文首先阐述了合同管理在工程建设中的重要性,然后又分析了当前合同管理在工程建设中的现状,最终得出加强合同管理,来规避工程建设中的风险,并且详细的分析了如何正确的运用合同管理来规避工程建设中的风险,提出了消灭合同中潜在的风险,规避工程建设中的风险。  【关键词】工程建设;合同管理;规避;风险;成本控制  在工程建设中,合同管理对于规避风
针对福泉煤矿副井1234轨道运输石门揭煤过程中出现的冒顶问题,通过采取注浆加固方式增加煤体的强度,应用金属骨架超前支护,并在揭开煤层后,采取架棚支护方式等综合技术措施有效地
【摘 要】10kV配电网在我国中小城市得到了广泛应用,而其供电的可靠性、供电效率以及成本等问题是决定其能否充分发挥功能与作用的关键。然而在10kV配电网在实际应用中,会受到各类因素的影响,所以合理研究设计并应用10kV配电网的自动化系统是非常具有现实意义的。本文通过对中小城市10kV配网自动化系统的建设思路、模式以及系统的规划与管理进行简单论述。  【关键词】中小城市;10kV配电网;自动化系统
介绍了危险源理论,由此得出了事故发生的一般性条件。分析了煤矿瓦斯爆炸的成因,在两类危险源理论的基础上对煤矿进行了危险源辨识,确定了煤矿瓦斯爆炸危险源。基于危险源理论并
为缓解本部煤炭资源危机,一些大的矿业集团异地投资建设煤矿项目的同时,潜在的法律风险也纷至沓来。以徐矿集团为例,分析了其在异地建设煤矿项目存在的相关法律风险,从事前防范、
【摘 要】继电保护技术在电力系统中占据着很重要的地位,发挥着重要的作用,继电保护技术在维护电力系统的稳定、安全以及保证电网的稳定运行发挥着重要的作用。随着信息技术的发展,信息系统管理也逐渐引入到继电保护技术中,而继电保护技术中的信息管理系统为电力系统的高效以及稳定运行起着积极的作用。本文主要从继电保护技术信息管理系统的概述、继电保护技术中的信息管理系统的实现进行分析。  【关键词】电力系统;继电
当前社会经济发展形势下,机械加工成为现代化工业的重要基础和环节。特别是高端性科学技术的日益提高,加剧了相关机械设备元件精度的加工需求,受客观因素制约,机械部件在其实际加