面向对象数据模型

§2.6 空间数据模型

四、面向对象数据模型

面向对象的基本概念是在本世纪70年代萌发出来的,它的基本做法是把系统工程中的某个模块和构件视为问题空间的一个或一类对象。到了80年代,面向对象的方法得到很快发展,在系统工程、计算机、人工智能等领域获得了广泛应用。但是,在更高级的层次上和更广泛的领域内对面向对象的方法进行研究还是90年代的事。

(一)基本思想和基本概念

面向对象的基本思想是通过对问题领域进行自然的分割,用更接近人类通常思维的方式建立问题领域的模型,并进行结构模拟和行为模拟,从而使设计出的软件能尽可能地直接表现出问题的求解过程。因此,面向对象的方法就是以接近人类通常思维方式的思想,将客观世界的一切实体模型化为对象。每一种对象都有各自的内部状态和运动规律,不同对象之间的相互联系和相互作用就构成了各种不同的系统。

在面向对象的方法中,对象、类、方法和消息是基本的概念(图6-6-7)。

(二)面向对象的特性

面向对象方法具有抽象性、封装性、多态性等特性。

(三)面向对象数据模型的四种核心技术

1、分类:是把一组具有相同属性结构和操作方法的对象归纳或映射为一个公共类的过程。如城镇建筑可分为行政区、商业区、住宅区、文化区等若干个类。

2、概括:将相同特征和操作的类再抽象为一个更高层次、更具一般性的超类的过程。子类是超类的一个特例。一个类可能是超类的子类,也可是几个子类的超类。所以,概括可能有任意多层次。概括技术避免了说明和存储上的大量冗余。这需要一种能自动地从超类的属性和操作中获取子类对象的属性和操作的机制,即继承机制。

3、聚集:聚集是把几个不同性质类的对象组合成一个更高级的复合对象的过程。

4、联合:相似对象抽象组合为集合对象。其操作是成员对象的操作集合。 四种核心技术的进一步说明。

(四)面向对象数据模型的核心工具

1、继承

一类对象可继承另一类对象的特性和能力,子类继承父类的共性,继承不仅可以把父类的特征传给中间子类,还可以向下传给中间子类的子类。它服务于概括。继承机制减少代码冗余,减少相互间的接口和界面。

继承有单重继承和多重继承之分。

2、传播

传播是一种作用于聚集和联合的工具,用于描述复合对象或集合对象对成员对象的依赖性并获得成员对象的属性的过程。它通过一种强制性的手段将成员对象的属性信息传播给复合对象。

复合对象的某些属性不需单独存储,可以从成员对象中提取或派生。成员对象的相关属性只能存储一次。这样,就可以保证数据的一致性,减少数据冗余。从成员对象中派生复合对象或集合对象的某些属性值,其公共操作有“求和”、“集合和”、“最大”、“最小”、“平均值”和“加权平均值”等。例如,一个国家最大城市的人口数是这个国家所有城市人口数的最大值,一个省的面积是这个省所有县的面积之和,等等。

继承和传播在概念和使用上都是有差别的。

§2.6 空间数据模型

四、面向对象数据模型

面向对象的基本概念是在本世纪70年代萌发出来的,它的基本做法是把系统工程中的某个模块和构件视为问题空间的一个或一类对象。到了80年代,面向对象的方法得到很快发展,在系统工程、计算机、人工智能等领域获得了广泛应用。但是,在更高级的层次上和更广泛的领域内对面向对象的方法进行研究还是90年代的事。

(一)基本思想和基本概念

面向对象的基本思想是通过对问题领域进行自然的分割,用更接近人类通常思维的方式建立问题领域的模型,并进行结构模拟和行为模拟,从而使设计出的软件能尽可能地直接表现出问题的求解过程。因此,面向对象的方法就是以接近人类通常思维方式的思想,将客观世界的一切实体模型化为对象。每一种对象都有各自的内部状态和运动规律,不同对象之间的相互联系和相互作用就构成了各种不同的系统。

在面向对象的方法中,对象、类、方法和消息是基本的概念(图6-6-7)。

(二)面向对象的特性

面向对象方法具有抽象性、封装性、多态性等特性。

(三)面向对象数据模型的四种核心技术

1、分类:是把一组具有相同属性结构和操作方法的对象归纳或映射为一个公共类的过程。如城镇建筑可分为行政区、商业区、住宅区、文化区等若干个类。

2、概括:将相同特征和操作的类再抽象为一个更高层次、更具一般性的超类的过程。子类是超类的一个特例。一个类可能是超类的子类,也可是几个子类的超类。所以,概括可能有任意多层次。概括技术避免了说明和存储上的大量冗余。这需要一种能自动地从超类的属性和操作中获取子类对象的属性和操作的机制,即继承机制。

3、聚集:聚集是把几个不同性质类的对象组合成一个更高级的复合对象的过程。

4、联合:相似对象抽象组合为集合对象。其操作是成员对象的操作集合。 四种核心技术的进一步说明。

(四)面向对象数据模型的核心工具

1、继承

一类对象可继承另一类对象的特性和能力,子类继承父类的共性,继承不仅可以把父类的特征传给中间子类,还可以向下传给中间子类的子类。它服务于概括。继承机制减少代码冗余,减少相互间的接口和界面。

继承有单重继承和多重继承之分。

2、传播

传播是一种作用于聚集和联合的工具,用于描述复合对象或集合对象对成员对象的依赖性并获得成员对象的属性的过程。它通过一种强制性的手段将成员对象的属性信息传播给复合对象。

复合对象的某些属性不需单独存储,可以从成员对象中提取或派生。成员对象的相关属性只能存储一次。这样,就可以保证数据的一致性,减少数据冗余。从成员对象中派生复合对象或集合对象的某些属性值,其公共操作有“求和”、“集合和”、“最大”、“最小”、“平均值”和“加权平均值”等。例如,一个国家最大城市的人口数是这个国家所有城市人口数的最大值,一个省的面积是这个省所有县的面积之和,等等。

继承和传播在概念和使用上都是有差别的。


相关文章

  • 浅析多媒体数据库的关键技术
  • 摘要:多媒体资料是以文件的形式在计算机上存储的,它利用各种操作系统的文件管理功能就可以实现存储管理.文件系统方式存储简单,当多媒体资料较少时,浏览查询还能接受,但演播的资料格式受到限制,最主要的是当多媒体资料的数量和种类相当多时,查询和演播 ...查看


  • 时空数据模型的研究与进展
  • 第25卷第5期2008年5月 计算机应用研究 Applicat ion Research of Com puters Vol. 25No. 5May 2008 时空数据模型的研究与进展 李阳东, 刘妙龙, 童小华 (同济大学测量与国土信息工 ...查看


  • 振动信号测
  • May2003重庆大学硕十学位论文中文摘要 从传感器输出的信号非常微弱,为了推动信号预处理及以后的处理.显示设 备,必须对传感器输出的信号进行放大.在采样系统中完成前置放大任务的放大 器称为前置放大器.目前一般使用的前置放大器有电压放大器和 ...查看


  • [软件工程导论]考试夹带
  • 1.软件危机的概念:软件危机是指在计算机软件的开发和维护过程中所遇到的一系 列严重的问题. 2.产生软件危机的原因:一方面与软件本身的特点有关,另一方面也和软件开发与 维护的方法不正确有关. 3.软件工程的定义:是指导计算机软件开发和维护的 ...查看


  • 数据库心得体会
  • 数据库总结 学号: 班级: 姓名: 摘要 创建.修改数据表,包括主键.外键及约束创建.修改数据表,包括主键.表的数据的输入.修改.删除,Insert .Update .Delete 表的数据的输入.修改.删除,Insert .Update ...查看


  • 面向对象的分析过程
  • 面向对象的分析过程 摘要 分析了面向对象技术应用于仿真领域的种种优点,亦即我们选择采用面向对 象的方法进行改造的原因.一些面向对象方法存在的不足. 关键词:仿真,面向对象,岸边集装箱起重机,训练器 面向对象的开发方法是以对象作为最基本的元素 ...查看


  • 软件工程师考试大纲
  • 软件工程师考试大纲 软件设计师考试大纲 一.考试说明 1.考试要求: (1) 掌握数据表示.算术和逻辑运算: (2) 掌握相关的应用数学.离散数学的基础知识: (3) 掌握计算机体系结构以及各主要部件的性能和基本工作原理: (4) 掌握操作 ...查看


  • (软考软件设计师)软件设计师考试大纲
  • 软件设计师(原高级程序员)考试大纲 一.考试说明 1.考试要求: (1) 掌握数据表示.算术和逻辑运算: (2) 掌握相关的应用数学.离散数学的基础知识: (3) 掌握计算机体系结构以及各主要部件的性能和基本工作原理: (4) 掌握操作系统 ...查看


  • 考试分析评价系统论文
  • 摘要 考试试卷分析评价系统是总结分析学校试卷质量的重要工具.本文以试卷分析评价系统的项 目开发为基础,介绍了中国试卷分析评价软件的应用发展和市场需求,同时介绍了数据库的发展现状及在本系统中的应用,描述了整个系统的开发过程, 分析了这个系统的 ...查看


热门内容