对象概述
扫描二维码
随时随地手机看文章
对象类 一个类定义了一组对象。类具有行为(be-havoir),它描述一个对象能够做什么以及做的方法(method),它们是可以对这个对象进行操作的程序和过程。对象实例 一个对象是一个类的一个实例,它代表一个现实物理“事件”,例如在一个财物系统数据库中的一个顾客或一个库存部分。类的继承(class inheritance)是一个重要的概念,它为一个子类继承它的父类的内置描述提供了途径。在父类中使用的代码被向下传给这个类指定的一个类(子类)。 [1] 例如,一个面向对象的数据库可以有一个称为“client”的类,这个类有两个子类,分别称为“company”和“individual”。首先,创立称为“client”的对象。它包含一个结构和一些过程,这些过程处理数据和从对象之外获得信息。然后,company和individual对象作为client的子类进行定义。作为一个子类,它们继承client对象的结构和特征,但是这些特征中的一些可能被屏蔽,或可以增加一些附加特征。例如,company子类可以具有一个特定的折算,而individua1子类却不具有。如果你需要一个关于客户的列表,你可以请求client对象进行列表。然而,如果你希望知道客户的账目平衡,你就需要从每个包含客户平衡的子类对象获得信息。 [1] 对象包含数据和过程,并且当被请求时提供信息。想象一个包含数据的箱子,它有一些按钮,你可以按这些按钮来对数据运行过程。方法是,一些对对象进行操作的过程或程序,它们可以使对象根据对象的内部代码和结构来以特定的形式进行动作。相似地,可以对对象的不同的类进行操作。有一个概念称为多态性(poly-morphism)或重载(overloading)。使用多态性,一组通用的方法可以在很大范围的类上进行操作。然而,具有相同名字和称呼的方式却可能诱发不同的事情。例如,在文本数据的“next”导致光标跳到下一个工作,而在电子表格的“next”却导致光标跳到下一个单元。
对象通过发送消息与另一个对象对话。这些消息在本质上是通过按下对象上的“按钮”从对象请求过程。在一个网络环境,你可以查看和消息总线相连的对象,如图O-4所示。消息传递为对象在一个面向对象的分布式计算环境进行通信提供了一条有效途径。消息传递是一种存储再转发方式,就象在电子函件系统中使用的那样。消息被从一台计算机传送到另一台计算机,直到它们抵达目的地。 [1] 所有这些都加到软件中,它们易于维护,并且在连续的基础之上改进,即无需对整个系统进行重新设计。对象是可重用的,使得系统增长时,它易于加入系统,这是因为在现有对象中的代码对创造新的对象是可重用的。 [1] 对象系统是可扩展的,开发人员增加模块,而模块重用内置数据结构,无需重编译操作系统。易于建造系统,这是因为面向对象对设计系统和实现系统提供了一条很自然的途径。对象可以提供了一种通用接口,因而许多不同应用程序能够访问数据。
也有许多不利的方面,包括大量增加了前端设计的时间,减低了性能和技术的不成熟。然而,随着系统的成长和硬件的不断强大,这些不利可以减退。这些缺陷,在对象系统可以在遍布分布网络上的许多不同类型的系统上向用户提供数据这一事实面前,也会减少。 [1] Objects in Distributed Environments 分布式环境中的对象对象技术被认为对实现未来的分布式系统是很有生命力的。这样,系统的复杂性可以通过实现消息传递服务(如对象请求代管器)的模型而简化。对象只是简单地请求服务,并且其他对象提供这些服务。开发人员不需要更多地知道对象将在上面通信的系统情况。事实上,对象技术为局部使用、将来扩展到异构分布式环境、设计应用提供了途径。 [1] 在这一领域的发展包括:对象管理组织(OMG)的公用对象请求代管器体系结构(CORBA)是一种规范,它的设计是为对象产生和接收请求提供了途径。Microsoft的对象链接和嵌入(OLE),为在单一台式系统或一个网络上的应用程序共享数据提供了一条途径。IBM的系统对象模型(SOM)和分布式系统对象模型(DSOM)提供了低级对象语言OpenDoc是一种为共享文本、图形和多媒体对象,而由Apple、Borland、IBM、Novel1和WordPerfect等公司开发的开发环境。 [1] 相关条目:Cario;Common Object Model 公用对象模型;Common Object Request Broker Architecture 公用对象请求代管器体系结构;Compound Documents 复合文档;Object Broker,DEC DEC的Object Broker;Object Linking and Embedding对象链接和嵌入;Object Management Architecture对象管理体系结构;Object-Oriented Interfaces and Operating Systems面向对象的接口和操作系统;Object Request Broker 对象请求代管器;Workplace OS。